Securities market and market maker activity tracking system and method

ABSTRACT

A method, system and computer program to monitor securities market activity to seek out imbalances in market activity that could lead to a price change in a particular security. Level 1 and/or level 2 data is analyzed to track the activity of market makers and to derive indicators of momentary upward or downward price pressure. The indicators can be displayed to a user.

TECHNICAL FIELD

The present invention generally relates to real time monitoring andanalysis of securities market activity, and, more particularly, to asystem and method of tracking and analyzing market maker activity on adynamic basis for a plurality of securities.

BACKGROUND ART

In a securities market, shares of stock in corporations (and optionsthereon), commodity futures (and options thereon), currencies and thelike are traded over a common system or exchange. Other traded items caninclude, but are not limited to, indices and mutual funds. Forsimplicity, however, the following discussion will be limited to thepurchase and sale of corporate stock. Within the exchange, traders buyand sell securities using bids and offers (also referred to as asks).More specifically, market makers who are selling securities transmit“offers” (or prices) and volumes (or associated volumes) at which theywill sell various securities, and market makers who are buyingsecurities transmit “bids” (or prices) and volumes (or associatedvolumes) at which they will buy various securities. Sellers attempt tosell at the highest possible price and buyers attempt to buy at thelowest possible price. The “inside market” represents the best price forsellers and buyers and respectively is comprised of the lowest ask (alsoknown as the inside ask price or level 1 ask) and the highest bid (alsoknown as the inside bid price or level 1 bid). Multiple market makerscan simultaneously have an inside bid and multiple market makers cansimultaneously have an inside ask. Bids and asks can collectively bereferred to as orders.

To maximize the profit taken from the securities market, traders wouldlike certain information to determine what moment is advantageous tosell or buy a particular security. Traditionally, traders have trackedinformation derived from the “floor” of exchanges such as the New YorkStock Exchange (NYSE), the National Association of Securities Dealers(NASDAQ), the Chicago Mercantile Exchange and the like. This informationcan be transmitted electronically in near real time (i.e., almostsimultaneously with actual market activity) to computer workstations fortraders to view and analyze.

The information presently available to traders includes “level 1”information and “level 2” information. Level 1 information for aparticular security typically includes, but may not be limited to, thecurrent trade value (i.e., last trade), the current trade volume, thetotal volume of shares traded during the trading session, the price toearnings (P/E) ratio, the previous trading day's closing value, thepresent day's opening value, the high and low values for the day and forthe previous fifty-two weeks, the change from the prior closing value,the lowest ask (inside ask), the highest bid (inside bid), the earningsper share, the market capitalization, the dividend paid per share, thedividend yield, news items and articles, and so forth. Also availableare records of historical performance, which can be displayedgraphically on a trade by trade basis or over periods of time rangingfrom fractions of seconds to years. Also available are statistics for anentire exchange, such as total volume of shares traded and statisticsfor calculated market indices, such as the Dow-Jones Industrial Average(“The DOW”), the NASDAQ Composite, the Standard and Poor's 500 (“S&P500”), the Russell 2000, sector indices, etc.

Level 2 information for a particular security typically includes eachmarket maker having an open (or active) bid or ask, the time when thebid or ask was placed (also referred to respectively as bid time and asktime), size of the bid or ask (i.e., number of shares, often reported inlots of 100) and price of the ask or bid.

Many traders are interested in short term upward or downward pricemovements for selected securities. Predicting upward and downward pricemovement is often carried out by observing level 2 information fortrends made by market makers as they offer and bid shares of varioussecurities. Typically, level 2 information for one to three securitieswill be displayed on a computer monitor and this information is intentlywatched by the traders. The number of securities an individual can trackin this manner is limited by the memory and cognitive ability of theindividual to assimilate up to tens or hundreds of dynamically updateditems of information per security per second. As a result, most traderscan only effectively track one security at a time. More skilled tradersmay be able to track several securities at a time. Nevertheless, thistechnique is physically and mentally taxing on the trader. In addition,while a trader is tracking one or two securities, a purchase or sellopportunity for a different, untracked security may have been missed.

At least one attempt to automate the analysis of level 2 information hasbeen made. As discussed in U.S. Pat. No. 5,297,032, market depth for awatch list of securities is displayed by identifying the total number ofmarket makers on the inside market for respective bid and offer quotesfor each watch list security along with arrows to indicate whether thenumber of market makers at these prices is increasing, staying the sameor decreasing. However, this system does not provide adequateinformation for a trader to make a decision as to the appropriateness ofpurchasing or selling a particular security.

Accordingly, there exists a need in the art for a more sophisticatedsecurities and market maker activity tracking system than the prior artprovides.

SUMMARY OF THE INVENTION

According to one aspect of the invention, the invention is directed to amethod of tracking activity of a plurality of market makers relating tosecurities traded on at least one common exchange where the marketmakers place bids and asks. The method can include receiving adynamically updated data stream containing level 1 and level 2 datarelating to a plurality of securities traded over the at least oneexchange, the level 1 data including at least the last trade price,inside bid and inside ask of each security and the level 2 datacontaining a bid price, a bid time, a bid volume, a security identifier,and a market maker identifier for each bid, and an ask price, an askvolume, an ask time, a security identifier and a market maker identifierfor each ask; and analyzing the data stream for a set of symbols toderive a statistic indicative of activity of an inside market for eachof the symbols, the statistic updated to correspond to content of theupdated data stream and the statistic selected from at least one of atotal number of market makers at the inside market, and a differencebetween a number of market makers at an inside bid price and a number ofmarket makers at an inside ask price.

According to another aspect of the invention, the invention is directedto a method of tracking activity of a plurality of market makersrelating to securities traded on at least one common exchange where themarket makers place bids and asks. The method can include receiving adynamically updated data stream containing level 1 and level 2 datarelating to a plurality of securities traded over the at least oneexchange, the level 1 data including at least the last trade price,inside bid and inside ask of each security and the level 2 datacontaining a bid price, a bid time, a bid volume, a security identifier,and a market maker identifier for each bid, and an ask price, an askvolume, an ask time, a security identifier and a market maker identifierfor each ask; and analyzing the data stream for a set of symbols toderive a statistic indicative of volume activity of an inside market foreach of the symbols, the statistic updated to correspond to content ofthe updated data stream and the statistic selected from at least one ofa total volume of shares at the inside market, a difference between anumber of shares at an inside bid price and a number of shares at aninside ask price, percent of inside market shares at the inside bidprice, and percent of inside market shares at the inside ask price.

According to yet another aspect of the invention, the invention isdirected to a method of tracking a plurality of symbols relating tosecurities traded on at least one common exchange. The method caninclude receiving a dynamically updated data stream containing level 1data relating to the plurality of symbols traded over the at least oneexchange, the level 1 data including at least the last trade price ofeach symbol; and analyzing the data stream for a set of symbols toderive for each symbol at least one of: an upward price movementindicator by dividing a count of the number of times the symbol achievesa new intra-session high by an intra-session trading price range, and adownward price movement indicator by dividing a count of the number oftimes the symbol achieves a new intra-session low by the intra-sessionprice range.

According to still another aspect of the invention, the invention isdirected to a method of tracking a plurality of symbols relating tosecurities traded on at least one common exchange. The method caninclude receiving a dynamically updated data stream containing level 1data relating to the plurality of symbols traded over the at least oneexchange, the level 1 data including at least the last trade price ofeach symbol; and analyzing the data stream for a set of symbols toderive for each symbol at least one of: a high opening balance rangeextension by subtracting a high trade price established during anopening balance delay interval from a current high trade price, and alow opening balance range extension by subtracting a current low tradeprice from a low trade price established during the opening balancedelay interval.

According to yet another aspect of the invention, the invention isdirected to a method of tracking a plurality of symbols relating tosecurities traded on at least one common exchange. The method caninclude receiving a dynamically updated data stream containing level 1data relating to the plurality of symbols traded over the at least oneexchange, the level 1 data including at least the last trade price ofeach symbol; and tracking on a symbol by symbol basis for a set ofsymbols a statistic selected from at least one of: a difference betweena number of trades for a first time period and a number of trades for asecond time period, a difference between a total volume of shares tradedfor the first time period and a total volume of shares traded for thesecond time period, an average volume of shares per trade for the firsttime period, an average volume of shares per trade for the second timeperiod and a difference between the average volume of shares per tradefor the first time period and the average volume of shares per trade forthe second time period.

According to another aspect of the invention, the invention is directedto a method of tracking a plurality of symbols and activity of aplurality of market makers relating to securities traded on at least onecommon exchange where the market makers place bids and asks. The methodcan include receiving a dynamically updated data stream containing level2 data relating to a plurality of securities traded over the at leastone exchange, the level 2 data containing a bid price, a bid time, a bidvolume, a security identifier, and a market maker identifier for eachbid, and an ask price, an ask volume, an ask time, a security identifierand a market maker identifier for each ask; and tracking on a symbol bysymbol basis for a set of symbols at least one statistic selected from anumber of bids, a number of asks, a bid volume of shares, an ask volumeof shares, a volume of shares per bid and a volume of shares per ask foreach of a first time period and a second time period.

According to yet another aspect of the invention, the invention isdirected to a method of tracking a plurality of symbols and activity ofa plurality of market makers relating to securities traded on at leastone common exchange where the market makers place bids and asks. Themethod can include receiving a dynamically updated data streamcontaining level 2 data relating to a plurality of securities tradedover the at least one exchange, the level 2 data containing a bid price,a bid time, a bid volume, a security identifier, and a market makeridentifier for each bid, and an ask price, an ask volume, an ask time, asecurity identifier and a market maker identifier for each ask; and fora selected market maker, tracking on a symbol by symbol basis for a setof symbols at least one statistic selected from a number of bids, anumber of asks, a bid volume of shares, an ask volume of shares, avolume of shares per bid and a volume of shares per ask for each of afirst time period and a second time period.

According to another aspect of the invention, the invention is directedto a method of tracking activity of a plurality of market makersrelating to securities traded on at least one common exchange where themarket makers place bids and asks. The method can include receiving adynamically updated data stream containing level 1 and level 2 datarelating to a plurality of securities traded over the at least oneexchange, the level 1 data including at least the last trade price,inside bid and inside ask of each security and the level 2 datacontaining a bid price, a bid time, a bid volume, a security identifier,and a market maker identifier for each bid, and an ask price, an askvolume, an ask time, a security identifier and a market maker identifierfor each ask; and for each symbol and market maker pair from a set ofsymbols and a set of market makers, counting at least one of a number oftimes that a bid having an inside bid price is placed, and a number oftimes that an ask having an inside ask price is placed.

According to still another aspect of the invention, the invention isdirected to a method of tracking activity of a plurality of marketmakers relating to securities traded on at least one common exchangewhere the market makers place bids and asks. The method can includereceiving a dynamically updated data stream containing level 1 and level2 data relating to a plurality of securities traded over the at leastone exchange, the level 1 data including at least the last trade price,inside bid and inside ask of each security and the level 2 datacontaining a bid price, a bid time, a bid volume, a security identifier,and a market maker identifier for each bid, and an ask price, an askvolume, an ask time, a security identifier and a market maker identifierfor each ask; and for each symbol and market maker pair from a set ofsymbols and a set of market makers, counting at least one of a number oftimes the market maker is a first market maker to post an inside bidthat is higher than an immediately preceding inside bid for the symbol,and a number of times the market maker is a first market maker to postan inside ask that is lower than an immediately preceding inside ask forthe symbol.

According to another aspect of the invention, the invention is directedto a method of tracking activity of a plurality of market makersrelating to securities traded on at least one common exchange where themarket makers place bids and asks. The method can include receiving adynamically updated data stream containing level 1 and level 2 datarelating to a plurality of securities traded over the at least oneexchange, the level 1 data including at least the last trade price ofeach security and the level 2 data containing a bid price, a bid time, abid volume, a security identifier, and a market maker identifier foreach bid, and an ask price, an ask volume, an ask time, a securityidentifier and a market maker identifier for each ask; and for eachsymbol and market maker pair from a set of symbols and a set of marketmakers, generating at least one of a bid persistence statistic byapproximating a percentage of a predetermined number trades for whichthe market maker had an inside bid price, and an ask persistencestatistic by approximating a percentage of a predetermined number oftrades for which the market maker has an inside ask price.

According to another aspect of the invention, the invention is directedto a program embodied in computer readable medium to track activity of aplurality of market makers relating to securities traded on at least onecommon exchange where the market makers place bids and asks. The programcan include code that receives a dynamically updated data streamcontaining level 1 and level 2 data relating to a plurality ofsecurities traded over the at least one exchange, the level 1 dataincluding at least the last trade price, inside bid and inside ask ofeach security and the level 2 data containing a bid price, a bid time, abid volume, a security identifier, and a market maker identifier foreach bid, and an ask price, an ask volume, an ask time, a securityidentifier and a market maker identifier for each ask; and code thatanalyzes the data stream for a set of symbols to derive a statisticindicative of activity of an inside market for each of the symbols andupdate the statistic to correspond to content of the updated datastream, the statistic selected from at least one of a total number ofmarket makers at the inside market, and a difference between a number ofmarket makers at an inside bid price and a number of market makers at aninside ask price.

According to another aspect of the invention, the invention is directedto a program embodied in computer readable medium to track activity of aplurality of market makers relating to securities traded on at least onecommon exchange where the market makers place bids and asks. The programcan include code that receives a dynamically updated data streamcontaining level 1 and level 2 data relating to a plurality ofsecurities traded over the at least one exchange, the level 1 dataincluding at least the last trade price, inside bid and inside ask ofeach security and the level 2 data containing a bid price, a bid time, abid volume, a security identifier, and a market maker identifier foreach bid, and an ask price, an ask volume, an ask time, a securityidentifier and a market maker identifier for each ask; and code thatanalyzes the data stream for a set of symbols to derive a statisticindicative of volume activity of an inside market for each of thesymbols and that updates statistic to correspond to content of theupdated data stream, the statistic selected from at least one of a totalvolume of shares at the inside market, a difference between a number ofshares at an inside bid price and a number of shares at an inside askprice, percent of inside market shares at the inside bid price, andpercent of inside market shares at the inside ask price.

According to another aspect of the invention, the invention is directedto a program embodied in computer readable medium to track a pluralityof symbols relating to securities traded on at least one commonexchange. The program can include code that receives a dynamicallyupdated data stream containing level 1 data relating to the plurality ofsymbols traded over the at least one exchange, the level 1 dataincluding at least the last trade price of each symbol; and code thatanalyzes the data stream for a set of symbols to derive for each symbolat least one of: an upward price movement indicator by dividing a countof the number of times the symbol achieves a new intra-session high byan intra-session trading price range, and a downward price movementindicator by dividing a count of the number of times the symbol achievesa new intra-session low by the intra-session price range.

According to another aspect of the invention, the invention is directedto a program embodied in computer readable medium to track a pluralityof symbols relating to securities traded on at least one commonexchange. The program can include code that receives a dynamicallyupdated data stream containing level 1 data relating to the plurality ofsymbols traded over the at least one exchange, the level 1 dataincluding at least the last trade price of each symbol; and code thatanalyzes the data stream for a set of symbols to derive for each symbolat least one of: a high opening balance range extension by subtracting ahigh trade price established during an opening balance delay intervalfrom a current high trade price, and a low opening balance rangeextension by subtracting a current low trade price from a low tradeprice established during the opening balance delay interval.

According to another aspect of the invention, the invention is directedto a program embodied in computer readable medium to track a pluralityof symbols relating to securities traded on at least one commonexchange. The program can include code that receives a dynamicallyupdated data stream containing level 1 data relating to the plurality ofsymbols traded over the at least one exchange, the level 1 dataincluding at least the last trade price of each symbol; and code thattracks on a symbol by symbol basis for a set of symbols a statisticselected from at least one of: a difference between a number of tradesfor a first time period and a number of trades for a second time period,a difference between a total volume of shares traded for the first timeperiod and a total volume of shares traded for the second time period,an average volume of shares per trade for the first time period, anaverage volume of shares per trade for the second time period, and adifference between the average volume of shares per trade for the firsttime period and the average volume of shares per trade for the secondtime period.

According to another aspect of the invention, the invention is directedto a program embodied in computer readable medium to track a pluralityof symbols and activity of a plurality of market makers relating tosecurities traded on at least one common exchange where the marketmakers place bids and asks. The program can include code that receives adynamically updated data stream containing level 2 data relating to aplurality of securities traded over the at least one exchange, the level2 data containing a bid price, a bid time, a bid volume, a securityidentifier, and a market maker identifier for each bid, and an askprice, an ask volume, an ask time, a security identifier and a marketmaker identifier for each ask; and code that tracks on a symbol bysymbol basis for a set of symbols at least one statistic selected from anumber of bids, a number of asks, a bid volume of shares, an ask volumeof shares, a volume of shares per bid and a volume of shares per ask foreach of a first time period and a second time period.

According to another aspect of the invention, the invention is directedto a program embodied in computer readable medium to track a pluralityof symbols and activity of a plurality of market makers relating tosecurities traded on at least one common exchange where the marketmakers place bids and asks. The program can include code that receives adynamically updated data stream containing level 2 data relating to aplurality of securities traded over the at least one exchange, the level2 data containing a bid price, a bid time, a bid volume, a securityidentifier, and a market maker identifier for each bid, and an askprice, an ask volume, an ask time, a security identifier and a marketmaker identifier for each ask; and code that tracks for a selectedmarket maker on a symbol by symbol basis for a set of symbols at leastone statistic selected from a number of bids, a number of asks, a bidvolume of shares, an ask volume of shares, a volume of shares per bidand a volume of shares per ask for each of a first time period and asecond time period.

According to another aspect of the invention, the invention is directedto a program embodied in computer readable medium to track activity of aplurality of market makers relating to securities traded on at least onecommon exchange where the market makers place bids and asks. The programcan include code that receives a dynamically updated data streamcontaining level 1 and level 2 data relating to a plurality ofsecurities traded over the at least one exchange, the level 1 dataincluding at least the last trade price, inside bid and inside ask ofeach security and the level 2 data containing a bid price, a bid time, abid volume, a security identifier, and a market maker identifier foreach bid, and an ask price, an ask volume, an ask time, a securityidentifier and a market maker identifier for each ask; and code that,for each symbol and market maker pair from a set of symbols and a set ofmarket makers, counts at least one of a number of times that a bidhaving an inside bid price is placed, and a number of times that an askhaving an inside ask price is placed.

According to another aspect of the invention, the invention is directedto a program embodied in computer readable medium to track activity of aplurality of market makers relating to securities traded on at least onecommon exchange where the market makers place bids and asks. The programcan include code that receives a dynamically updated data streamcontaining level 1 and level 2 data relating to a plurality ofsecurities traded over the at least one exchange, the level 1 dataincluding at least the last trade price, inside bid and inside ask ofeach security and the level 2 data containing a bid price, a bid time, abid volume, a security identifier, and a market maker identifier foreach bid, and an ask price, an ask volume, an ask time, a securityidentifier and a market maker identifier for each ask; and code that,for each symbol and market maker pair from a set of symbols and a set ofmarket makers, counts at least one of a number of times the market makeris a first market maker to post an inside bid that is higher than animmediately preceding inside bid for the symbol, and a number of timesthe market maker is a first market maker to post an inside ask that islower than an immediately preceding inside ask for the symbol.

According to another aspect of the invention, the invention is directedto a program embodied in computer readable medium to track activity of aplurality of market makers relating to securities traded on at least onecommon exchange where the market makers place bids and asks. The programcan include code that receives a dynamically updated data streamcontaining level 1 and level 2 data relating to a plurality ofsecurities traded over the at least one exchange, the level 1 dataincluding at least the last trade price of each security and the level 2data containing a bid price, a bid time, a bid volume, a securityidentifier, and a market maker identifier for each bid, and an askprice, an ask volume, an ask time, a security identifier and a marketmaker identifier for each ask; and code that, for each symbol and marketmaker pair from a set of symbols and a set of market makers, generatesat least one of a bid persistence statistic by approximating apercentage of a predetermined number trades for which the market makerhad an inside bid price, and an ask persistence statistic byapproximating a percentage of a predetermined number of trades for whichthe market maker has an inside ask price.

BRIEF DESCRIPTION OF DRAWINGS

These and further features of the present invention will be apparentwith reference to the following description and drawings, wherein:

FIG. 1 is a block diagram of a securities and market maker activitytracking system according to the present invention;

FIG. 2 is a block diagram of an analysis window in a crowd montage mode;

FIG. 3 is a block diagram of an analysis window in an expanded countmode;

FIG. 4A is a block diagram of an analysis window in an action montagemode according to a trades view;

FIG. 4B is a block diagram of an analysis window in the action montagemode according to an orders view;

FIG. 4C is a block diagram of an analysis window in the action montagemode according to an order book view; and

FIG. 5 is a block diagram of an analysis window in an insiders montagemode.

DISCLOSURE OF INVENTION A. Introduction

In the detailed description which follows, identical components havebeen given the same reference numerals, regardless of whether they areshown in different embodiments of the present invention. To illustratethe present invention in a clear and concise manner, the drawings maynot necessarily be to scale and certain features may be shown insomewhat schematic form.

The present invention relates to a system and associated methods oftracking securities traded over a common market. The system andassociated methods assist a user to track and analyze the activity ofmarket makers involved in the purchase and sale of the tradedsecurities. In doing so, the system and associated methods observesmarket maker activity for trends, or indicators, potentially leading toshort term (i.e., a limited duration of time) upward or downward pricemovement in at least one security. The system and methods use sets ofdynamically updated items of information relating to market makeractivity and statistics derived therefrom to present the user withinformation regarding the activity of marker makers involved in thepurchase and sale of the traded securities.

The system utilizes level 1 and level 2 information to derive indicatorsof short term upward or downward price pressure for a plurality ofsecurities selected by a user. The level 2 information can be filteredby a set of level 2 filters to derive a corresponding number of level 2data sets. Indicators of upward or downward price pressure are derivedfrom each of the level 2 data sets for each of a plurality ofsecurities. The filters adapt themselves dynamically to current marketconditions and will be described in greater detail below.

The information displayed to the user, including the calculatedstatistics, can be dynamically sorted so that with each screen refresh,the displayed information is ordered appropriately for the displaymethod selected by the user.

The system can be placed in one or more operational modes, including acrowd montage mode, an expanded count mode, an action montage mode, andan insider's montage mode.

Briefly, in the crowd montage mode, the user can be presented with bidand ask information intended to highlight imbalances in terms of thenumber of market makers and/or bid and ask volume at the respectiveinside prices on a symbol by symbol basis.

In the expanded count mode, the user can be presented with informationrelating to new intra-trading session (sometimes referred to asintra-day) highs and/or new intra-trading session lows on a symbol bysymbol basis.

In the action montage mode, the user can be presented with informationto monitor changes in volumes both of trade activity and of market makerorder activity. In the action montage mode, comparisons of averagevolume activity between different time periods can be made.

In the insider's montage mode, the user can be presented withinformation indicative of a market maker's degree of willingness toplace orders at an inside price.

Other possible modes of operation are described in greater detail inco-owned U.S. patent application Ser. No. 10/167,950, filed Jun. 12,2002 (U.S. patent application publication No. 2003/0069834, publishedApr. 10, 2003), and in co-owned U.S. patent application Ser. No.09/911,772, filed Jul. 24, 2001 (U.S. patent application publication No.2003/0065608, published Apr. 3, 2003), the disclosures of which areherein incorporated by reference in their entireties.

B. Securities and Market Maker Activity Tracking System Overview B(i).Configuration

Referring to FIG. 1, a block diagram of a securities and market makeractivity tracking system 10, or system 10, according to the presentinvention is illustrated. As used herein, the term “security” (or“securities”) is intended to include, but is not limited to, shares ofstocks in corporations (or options thereon), corporate or governmentbonds, commodity futures (or options thereon), currencies, options,indicies, mutual funds, and all other items traded over a common systemor exchange. The term security can also include indices, such as forexample, “the Dow”, “the NASDAQ composite”, a sector index or indicatorand so forth. The term “symbol” (or “symbols”) includes securities andindices. Briefly, the system 10 is a computer tool having a graphicaluser interface to assist a securities trader in analyzing informationfrom security markets for opportune times to purchase or sell aparticular security. Although the invention has application in trackingand analyzing securities of any type, the following discussion relatesto the tracking and analysis of information related to the trading ofshares of corporate stock on an exchange or exchanges.

More specifically, the activity of market makers (e.g., placement ofbids and asks) is analyzed. Many of the modes of operation describedherein are geared to seek out temporary, typically short term (e.g.,lasting from several seconds to perhaps as long a several hours),imbalances in individual or collective market maker activity that couldlead to a price change in a particular security or index. Theseimbalances are also referred to as upward or downward price pressuresand may last for few seconds, minutes or hours depending on marketconditions.

The system 10 includes a computer system 12, which can include multiplecomputers that can be located remotely from each other. However, in theillustrated embodiment of FIG. 1, the computer system 12 includes asingle computer. The computer system 12 has one or more processors 14for executing instructions, usually in the form of computer code, tocarry out a specified logic routine. The computer system 12 has a memory16 for storing data, software, logic routine instructions, computerprograms, files, operating system instructions, and the like. The memory16 can comprise several devices and includes, for example, volatile andnon-volatile memory components. Volatile memory components typically donot retain data values upon a loss of power. Non-volatile memorycomponents retain data upon a loss of power. Thus, the memory 16 caninclude, for example, random access memory (RAM), read only memory(ROM), hard disks, floppy disks, compact disks (including, but notlimited to, CD-ROM, DVD-ROM, and CD-RW), tapes, and/or other memorycomponents, plus associated drives and players for these memory types.In a multiple computer embodiment, the processor 14 can be multipleprocessors on one or more machines linked together locally or remotely.Software used to carry out the functions described herein can bebroken-up so that different parts can be executed by different computerslocated locally or remotely from each other.

The processor 14 and the memory 16 are coupled to a local interface 18.The local interface 18 can be, for example, a data bus with anaccompanying control bus, or a network between a processor and/orprocessors and/or memory or memories. The computer system 12 has a videointerface 20, a number of input interfaces 22, a modem 24 and/or a datatransceiver interface device 25 (the modem 24, the data transceiver 25and any other device for receiving and/or transmitting data are alsoreferred to herein as a receiver, a receiving means and/or atransceiver), a number of output interfaces 26, each being coupled tothe local interface 18.

The system 10 has a display 28 coupled to the local interface 18 via thevideo interface 20. Although shown as a single cathode ray tube (CRT)type display, multiple displays can be used. Also, the display devicecan alternatively be, for example, a liquid crystal display (LCD), aplasma display, an electro-luminescent display, indicator lights, orlight emitting diodes (LEDs). In addition, the system 10 has severalinput devices including, but not limited to, a keyboard 30, a mouse 32,a microphone 34, a digital camera (not shown) and a scanner (not shown),each being coupled to the local interface 18 via the input interfaces22. The modem 24 and/or data transceiver 25 can be coupled to anexternal network 38 enabling the computer system 12 to send and receivedata signals, voice signals, video signals and the like via the externalnetwork 38 as is well known in the art. The external network 38 may be,for example, the Internet, a wide area network (WAN), a local areanetwork (LAN), a direct data link, or other similar network orcommunications link, including wireless networks. The modem 24 and/orthe data transceiver 25 can be coupled to receive data from a satellitetransceiver 39, co-axial cable, fiber optic cable, etc. It is noted thatthe system 10 can be accessed and used by a remote user via the externalnetwork 38 and modem 24. The system 10 can also include output devicescoupled to the local interface 18 via the output interfaces 26, such asaudio speakers 40, a printer 42, and the like.

The computer system 12 is programmed to display and execute a securitiestracking software tool in graphical user interface (GUI) format. Otherembodiments can include outputting data, such as in the form ofspreadsheets for display using a spreadsheet software application, inthe form of electronic mail, in the form of a page, and so forth.Alternatively, the computer system 12 has logic stored in the memory 16capable of being executed to function as the securities trackingsoftware tool.

Although described herein as being executed on a single computer system12, functions can be distributed among multiple computing devices. Inone embodiment of the invention, a server receives a level 1 and level 2data stream and analyzes the data stream to produce statistics asdescribed herein. The server outputs a data set, including thestatistics, to a client terminal over a network or communications link.The client can further process the data sent and generate displays ofdata to a user.

Upon establishing a communications link with a data service provider,the securities tracking system 10 receives various items of informationconcerning securities traded at selected exchanges. The data serviceprovider can be, for example, the exchange(s) itself and/or an entitythat rebroadcasts data provided by or derived from one or moreexchanges. For example, the user may elect to receive information forsecurities traded at the New York Stock Exchange (NYSE) and the NationalAssociation of Securities Dealers (NASDAQ). For the NASDAQ, there areabout 8,000 securities, each being traded and having associatedtherewith items of level 1 information. This information is updated inreal time or near real time (i.e., almost simultaneously with actualmarket activity) by the data service provider broadcasting signals tothe securities tracking system 10. For example, each time a last tradevalue and volume for any security on the exchange changes, the dataservice provider will transmit the most recent traded value, tradevolume, and trade time for the security to the securities trackingsystem 10.

Similarly, level 2 information can be provided from the data serviceprovider to the securities tracking system 10. It is noted that at thetime of filing the present application for Letters Patent, NYSE level 2information is generally not available. However, the concepts andinventions described herein will have equal application to level 2 typeinformation from any exchange, including the NYSE. As an example, level2 information for the NASDAQ includes each market maker with an open bidor ask for any security listed on the exchange being tracked. The NASDAQlevel 2 information includes the time that the ask or bid was placed(also referred to respectively as an ask time and a bid time), the sizeof the ask or bid in number of shares (often reported in lots of onehundred), and the value of the bid or ask, all of which is transmittedto the securities tracking system 10 in real time or near real time.

The total amount of transmitted level 2 information will depend on thenumber of market makers placing bids or asks for any given security atany given time. It has been estimated that between level 1 and level 2information for NASDAQ, that there are about 400 to about 1,000 items ofinformation that are updated each second. It is also estimated that mostof the market activity relates to a small number of securities sincecertain securities are more widely traded than others. For example, ithas been estimated that about 90% of the market activity relates toabout 10% of the securities on the NYSE and the NASDAQ.

As one skilled in the art will appreciate, the foregoing architecturefor the securities and market maker activity tracking software tool andassociated operational logic is exemplary. Alternative systems for andmethods of carrying out the functions described herein will be apparentto one of ordinary skill in the art and are intended to fall within thescope of the claims appended hereto. The logic described herein can beembodied in any computer-readable medium for use by or in connectionwith an instruction execution system such as a computer/processor-basedsystem or other system that can fetch or obtain the logic from thecomputer-readable medium and execute the instructions contained therein.In the context of this document, a “computer-readable medium” can be anymedium that can contain, store or maintain logic and/or data for use byor in connection with the instruction execution system. Thecomputer-readable medium can be any one of many physical media such as,for example, electronic, magnetic, optical, electromagnetic, orsemiconductor media. More specific examples of suitablecomputer-readable medium would include, but are not limited to, aportable magnetic computer diskette such as a floppy disk, a hard disk,a random access memory (RAM), a read-only memory (ROM), or a disk (e.g.,a CD, a CD-RW, or a DVD-ROM).

B(ii). Watch Lists, Alerts and Modes of Operation

The user can set up various watch lists containing selected groups ofsecurities of particular interest to the user, such as high techcompanies, pharmaceutical companies, retailers, transportationproviders, the NASDAQ 50 or 150, the users favorite securities, and soforth. Within each watch list, securities are specified by tickersymbol.

The selected securities programmed into the watch lists by the user arestored within a database associated with the user. Statistics for eachsecurity in the user's database can be calculated regardless of whetherthe particular security is presently displayed. This allows thesecurities tracking system 10 to determine if a programmed alert (alsoreferred to herein as an alarm) has been tripped for any of thesecurities in the user's database. If an alert is tripped, the alert canbe displayed in an alert window.

The user can define more than one database to track various sets ofsecurities. However, in a typical mode of operation, only one databaseis used at a time. As indicated above, each database can containmultiple watch lists to sub-divide the securities contained in a user'sdatabase. In addition, the same security can be included within morethan one watch list contained within a database. The overall number ofsecurities that can be contained in a database and processed by thesecurities tracking system 10 is limited only by the processing andmemory capabilities of the computer system 12 being used to execute thesecurities tracking software tool.

Statistics that are derived from current market activity can bedisplayed in an analysis window on the display 28. It is noted that thestatistics can be continually updated and resorted based on the incomingdata stream and as described in greater detail herein. The statisticsare calculated based on the incoming level 1 and/or level 2 datareceived over the communications link established with the level 1 andlevel 2 data service provider. In one embodiment, the displayedinformation presented on the display 28 is written to the screenaccording to a user controlled refresh rate. Refreshing the screenperiodically, rather than continuously, reduces burdens on the computersystem 12, thereby enhancing performance of the securities trackingsystem 10. Example refresh rates include four times a second, twice asecond, once a second, every two seconds, and the like.

As indicated, the system can be programmed with alert thresholds thatare tripped by data values contained within the level 1 or level 2 datastream or tripped by calculated statistics. The alerts are used tonotify the user of market conditions that could influence the user'sdecision in purchasing or selling a particular security. If an alert istripped, the user will be notified by the system. Alerts can beprogramed by the user to be triggered on a global basis, on aper-security basis or on a per-market maker basis. More specifically,global alerts are those which are triggered for any security or marketmaker upon the presence of a certain condition. Alerts can take a numberof forms, such as flashing icons on the display 28, audio alertsbroadcast via the speaker 40 and the addition of the alert to an alertwindow (not shown). Alerts can also be embodied as electronic mail,pages, spreadsheets and so forth. It is noted that the securitiestracking system 10 can produces alerts for all items in the user'sdatabase and not just the items displayed at any given time on thedisplay 28. As one skilled in the art will appreciate, alerts can beprogrammed for any data value and can be based on a specific thresholdvalue or deviation (expressed as a number or as a percentage) from acurrent or specified value. In addition, an alert can be based onmultiple parameters.

As will be described in more detail below, the system 10 can displayinformation in one or more modes, including a crowd montage mode (FIG.2), an expanded count mode (FIG. 3), an action montage mode (FIGS.4A-4C), and an insider's montage mode (FIG. 5). Each mode has at leastone associated analysis window format that can be displayed on thedisplay 28 to provide the user with certain information relating tosecurities market and/or market maker activity. For each mode, one ormore instances of an analysis window can be opened to displayinformation for a different group of securities, group of market makersand/or filtration option. Also, analysis windows for multiple modes canbe simultaneously opened. In the analysis windows, securities areidentified by ticker symbol and market makers are identified by a fourcharacter marker maker identifier (MMID).

B(iii). Display Options and Dynamic Updating/Sorting

The user may visually configure any of the analysis windows discussedherein in a number of different ways. The analysis windows can beconfigured to include tables as shown in the illustrated examples. Inother configurations, statistics and other information can be presentedin graphical format, such as in the form of charts. When using tabularformatting, some of the illustrated columns need not be displayed. Inother examples, the listed securities can be displayed in an orderaccording to the values in one or more columns of information or inalphabetical order according to ticker symbol. For example, a trader maybe interested in showing the securities in highest to lowest value orderfor a particular statistic. In another embodiment, selected columns canreplace one another upon invoking a keyboard 30 or mouse 32 action. Forexample, a table can show certain columns and suppress display of othercolumns; but, upon invoking the keyboard 30 or mouse 32 action (e.g.,right clicking on one of the particular columns), the selected columnwill be replaced by a suppressed column.

For simplicity of the drawing figures, the analysis windows of FIGS. 2-6are shown in an unpopulated state. That is, the symbols, MMIDs, prices,volumes, statistics and so forth that would appear in an active analysiswindow have not been included. From the descriptions contained hereinfor the values listed under each heading of the analysis windows, one ofordinary skill in the art would be able to understand the manner inwhich the analysis windows would be populated if actively displayinginformation. Examples of populated windows analogous to the analysiswindows described herein can be viewed in the U.S. patent applicationsidentified above.

The information displayed in any particular analysis window can bedynamically updated as data relating to market maker activity istransmitted to the system 10. For example, at the time of refreshing thedisplay 28, the tables shown in the analysis windows can be dynamicallysorted such that the tables are re-ordered row by row to properlydisplay the data in a manner selected by the user. For example, anycolumn can be selected to display the entire table according toascending or descending order for the values contained in the selectedcolumn, even if a different order of rows were displayed before therefresh. In this dynamic sorting scheme, each table can be sorted byselecting a particular column and when the table is refreshed to showinformation relating to current market activity, the table is re-orderedrow by row to properly display the data in the manner selected by theuser. The user can select to turn off this dynamic sorting feature ofthe present invention so that updated information will be displayed, butin the row by row order in which the rows were before the refresh.

The tables can be refreshed continually as new data is received andstatistics are calculated. Alternatively, to conserve computer system 12resources, the tables and chart(s) shown on the display 28 can berefreshed at periodic intervals such as every quarter second, every halfsecond, every one second, every two seconds, every four seconds, or thelike.

To assist the user to follow the activity of a selected symbol or aselected market maker, the securities tracking system 10 can be providedwith a tracker feature. Since the analysis windows are updated at arelatively fast rate (e.g., continually or periodically) to reflectcurrent market conditions, the rows corresponding to each securityand/or market maker are subject to relatively rapid change in displayedposition. It can become difficult and tiresome for a person to watch theactivity of a particular market maker for a particular security in suchan environment. The tracker feature visually highlights one or more rowsof the analysis windows for a selected security(ies) and/or selectedmarket maker(s) as the associated rows move upward or downward in thetables. The highlighting assists the user's eye in following theactivity of the selected security(ies) and/or market maker(s) relativeto the activity of the other securities and/or market makers. Additionaldiscussion of the tracker feature can be found in the above-mentionedU.S. patent application Ser. No. 10/167,950.

In addition to displaying updated statistics of current market activity,the securities tracking system 10 can store historical statisticsrelating to market activity for each stock in the user's database. Morespecifically, this information can be stored for subsequent charting ordisplay in table format.

B(iv). Filtering

As indicated, the incoming data can be filtered using a level 2 filter,and displayed information can be based on a user selected filtrationlevel (or threshold). Briefly, the level 2 filter is used by thesecurities tracking system 10 to disregard market maker activity that ismore than a selected price percentage away from the last reported tradeprice of each security. This allows the user to confine analysis ofmarket maker activity to those bids and asks that are close to thecurrent market price of each security. Without being bound by theory, itis believed that by monitoring and analyzing market maker activity thatis close to the current market price, only the most relevant items ofinformation will be observed and be factored into any decision onpurchasing or selling stock in a security. Example filtrationthresholds, expressed as percentages, include 1%, 2%, 3%, 4%, and 5%.However, the filter percentage can be defined by the user and need notbe an integer (e.g., 2.5%). Filters can also be based on a fixeddistance (or distances) away from the last reported trade price, suchas, for example, 5/16 of a point, ⅝ of a point, 3 cents, 1 cent, etc. Inaddition, the filter can be turned off so that no data relating tomarket activity is excluded. In one embodiment of the system 10, theincoming data stream is filtered at each possible filtration percentage(including preprogrammed percentages and user defined percentages)regardless of a filtration level selected by the user for displayeddata. Corresponding data sets are derived for each of those filtrationpercentages. The data sets are stored for display as historical marketmaker activity or for immediate presentation if the user selects adifferent filtration level for displayed data.

The operation of the filter is dynamic to actively stay current withcurrent market price. As an example of filter operation, if the lastreported trade in a stock took place at $20.00 and the level 2 filterfor displayed information was set to 1%, then all market maker bidsbelow $19.80 (twenty cents being 1% of $20.00) and asks above $20.20will be disregarded when displaying data, when calculating statistics orinformation to be displayed, and/or when generating and displayingalerts. Using the foregoing example, if the next reported ask for thestock is $20.10, the securities tracking system 10 will use the reportedask of $20.10 and then dynamically update the displayed statistics anddetermine if the updated statistics trigger any of the alerts set by theuser. If, however, the next ask is $20.50, that ask will be disregardedas it is outside the range of data values allowed by the filterparameters. The filter adjusts itself dynamically based on the lasttrade value. For example, if, the next reported trade in stock moves to$19.90, all bids below $19.70 would be disregarded and all asks above$20.10 would be disregarded. The system 10 will filter the incoming datastream in the same manner for every other filter level to generatecorresponding data sets. As indicated, the data sets are stored fordisplay as historical market maker activity or for immediatepresentation if the user selects a different filtration level fordisplayed data.

Other information can also be filtered from display and entry into thestatistical calculations of the system 10. For example, a crossed marketfilter can be used to remove bids that are higher than the inside bidand asks that are lower than the inside ask. These bids and asks areusually old bids or asks that were not purged.

In addition to the level 2 filter and the crossed market filter, a baddata item filter (or bad tick filter) can be used to remove items ofinformation which were erroneously entered by operators of the stockexchange databases and subsequently transmitted by the data serviceprovider to the securities tracking system 10. The bad data filter canremove items of information which deviate significantly from surroundingprice events for the same security. For example, a bid, ask or tradeprice deviating more than 10% from an average of the last ten similarevents can be excluded. Another example of the bad data filter includesa filter which removes any items of price information (i.e., a bidquote, an ask quote or a trade price) which deviate from correspondingrecent price information by about a multiple of 10 or 100. Such a dataitem indicates that a decimal point was erroneously typed in the priceinformation or that a decimal place was omitted. For example, if aparticular stock is trading at about $50.00 per share and a bid of $5.00is received, the filter can remove that data item. Another bad datafilter is a filter which removes items of price information whichdeviate by one integer in a price's dollar, tens or hundreds position.For example, if a security has been trading at about $23.00 a share, adata value of $22.00 a share or $24.00 a share can be disregarded.

C. Crowd Montage Mode

With additional reference to FIG. 2, an analysis window 44 isillustrated for the crowd montage mode. In this mode, the crowd montageanalysis window 44 displays a table 46 identifying a group of securitiesfor which “crowd” information is displayed. Selective informationderived from the level 1 and level 2 information is displayed inassociation with each displayed ticker symbol (column 48), although thestatistics discussed herein can be calculated for each security trackedby the securities tracking system 10 (this may include all securities inall of the user's watch lists or all securities on all exchanges fromwhich data is received—even if the securities are of different type,such as a mix of stocks, futures and/or indices).

The displayed information can include relative inside volume percentagefor bids and asks (respectively, columns 50 and 52), inside prices onthe bid side and the ask side (respectively, columns 54 and 56), numberof market makers at the inside bid and ask (respectively, column 58 and60), total number of market makers at the inside bid and the inside ask(column 62), the difference between the number of market makers at theinside bid price and the inside ask price (column 64), volume of sharesat the inside bid and inside ask (respectively, column 66 and 68), totalvolume number of shares at the inside bid and the inside ask (column70), and the difference between the number of shares at the inside bidand the inside ask (column 74).

It is noted that the displayed statistics of the crowd montage modewindow 44 can be derived from data after application of the userselected level 2 filter, and/or crossed market filter, refreshed on thedisplay screen 28 at a desired refresh rate and dynamically sorted asdiscussed herein.

The foregoing columns of information presents the user with statisticsrelating to the inside bid(s) and the inside ask(s) that are intended tohighlight imbalances in terms of the number of market makers and/or bidand ask volume at the respective inside prices on a symbol by symbolbasis. Imbalances in terms of the number of market makers trying to buyor sell a security or imbalances in terms of the amount of shares ofsecurity available for sale or desired for purchase can be indicative ofwhether the price for a security will rise or fall. For example, ifthere is a large amount of activity (e.g., a “crowd” of market makers ora “crowd” of volume) on the bid side of a security, the price for thesecurity is likely to rise. Similarly, if there is a large amount ofactivity (e.g., a “crowd” of market makers or a “crowd” of volume) onthe ask side of a security, the price for the security is likely todecline.

Although the illustrated embodiment of the crowd montage mode displaysinformation associated with market maker activity at the inside bid andthe inside ask (the highest tier of level 2 data), the crowd montagemode can be adapted to display information at another tier of level 2data (e.g., the second highest tier or the third highest tier. Inanother embodiment, the crowd montage mode can display information formultiple tiers of level 2 data as selected by the user.

In the crowd montage window 44, column 54 displays the inside bid pricefor each symbol shown in column 48. Similarly, column 56 displays theinside ask price for each symbol shown in column 48.

Column 58 respectively displays the total number of market makers havingan active bid at the inside bid price for each symbol shown in column48. Similarly, column 60 respectively displays the total number ofmarket makers having an active ask at the inside ask price for eachsymbol shown in column 48. Column 62 shows the total number of marketmakers having an order at an inside price, which can be derived byadding corresponding values from column 58 and column 60. A relativelylarge number of total market makers for a particular security showsactivity surrounding the security and could be an indication that thesecurity may have or is undergoing a movement in price. Column 64 showsthe difference between the number of market makers at the inside bidprice and the number of market makers at the inside ask price, which canbe derived by subtracting the value of column 60 from the correspondingvalue of column 58. In this embodiment, a positive value in column 64would indicate that there are more market makers bidding for thecorresponding security and a negative value in column 64 would indicatethat there are more market makers offering the corresponding security.Relatively more market makers bidding on a security could be anindication that there is pressure towards buying that security (e.g.,the security's price may rise) and relatively more market makersoffering a security could be an indication that there is pressuretowards selling that security (e.g., the security's price may decline).

Column 66 respectively displays the aggregate volume for all of the bidsat the inside bid price for each symbol shown in column 48. Column 68respectively displays the aggregate volume for all of the asks at theinside ask price for each symbol in column 48. Column 70 shows the totalvolume at the inside bid price and the inside ask price, which can bederived by adding corresponding values from column 66 and 68. Column 72shows the difference between the volume at the inside bid price and thevolume at the inside ask price, which can be derived by subtracting thevalue of column 68 from the corresponding value of column 66. In thisembodiment, a positive value in column 72 would indicate that there ismore interest in purchasing the corresponding security than in sellingthe corresponding security. A negative value in column 72 would indicatethat there is more interest in selling the corresponding security thatin purchasing the corresponding security. Relatively more inside bidvolume for a security could be an indication that there is pressuretowards buying that security (e.g., the security's price may rise) andrelatively more inside ask volume for a security could be an indicationthat there is pressure towards selling that security (e.g., thesecurity's price may decline).

The relative inside volumes shown in columns 50 and 52 are expressed asa percentage of total inside volume and are calculated respectively foreach security identified in column 48. The relative inside bid volumevalues in column 50 can be calculated by dividing the correspondinginside bid volume (e.g., from column 66) by the total inside volume(e.g., from column 70). The relative inside ask volume values in column52 can be calculated by dividing the corresponding inside ask volume(e.g., from column 68) by the total inside volume (e.g., from column70). As should be appreciated, the sum of corresponding relative insidebid volume and relative inside ask volume values should total onehundred percent.

D. Expanded Count Mode

Referring now to FIG. 3, an analysis window 74 is illustrated for theexpanded count mode. In this mode, the expanded count analysis window 74displays a table 76 identifying a group of securities for which “count”information is displayed. Selective information derived from the level 1and level 2 information is displayed in association with each displayedticker symbol (column 78), although the statistics discussed herein canbe calculated for each security tracked by the securities trackingsystem 10 (this may include all securities in all of the user's watchlists or all securities on all exchanges from which data isreceived—even if the securities are of different type, such as a mix ofstocks, futures and/or indices). Although not illustrated, a column canbe added to identify the exchange in which individual securities aretraded. As should be appreciated, such an exchange column can be addedto any of the analysis windows described herein.

It is noted that the displayed statistics of the expanded count modewindow 74 can be derived from data after application of a user selectedvolume filter and/or user selected price filter, refreshed on thedisplay screen 28 at a desired refresh rate and dynamically sorted asdiscussed herein.

The expanded count mode analysis window 74 can include a last tradeprice column 80 and rank column 82. The rank value of column 82 presentsthe user with information regarding the relationship between a lasttrade price (e.g., as displayed in column 80) for each listed securityand the intra-trading session high and low for the security. Generationof the rank values for column 82 is discussed in greater detail in theabove-mentioned U.S. patent application Ser. No. 10/167,950, filed Jun.12, 2002, and will not be discussed in great detail herein.

Briefly, in one embodiment, the rank value is a percentage value that isindicative of how far the last trade for the security is away from thesession's high and low for the security. The difference between thesession's high (which can be displayed in column 84) and the session'slow (which can be displayed in column 86) is referred to herein as the“day's range.” As new trading highs and/or lows are established for asecurity, the day's range will expand. Equation 1 can be used tocalculate the rank value. $\begin{matrix}{{{Rank}\quad{Value}} = \frac{{{Last}\quad{Trade}\quad{Value}} - {{Session}\quad{Low}}}{{Day}^{\prime}s\quad{Range}}} & {{Eq}.\quad 1}\end{matrix}$

The expanded count mode analysis window 74 can include a high countcolumn 88 and a low count column 90. Generation of the count values forcolumns 88 and 90 is discussed in greater detail in the above-mentionedU.S. patent application Ser. No. 10/167,950, filed Jun. 12, 2002, andwill not be discussed in great detail herein.

Briefly, the high count values displayed in column 88 represent thenumber of times during the trading session that the correspondingsecurity traded at a new and higher intra-session high price. Similarly,the low count values displayed in column 90 represent the number oftimes during the trading session that the corresponding security tradedat a new and lower intra-session low price.

In calculating the high and low counts, as well as the values forcolumns 92-102 discussed below, the securities tracking system 10 can beconfigured to ignore new highs and/or lows established during an initialperiod of trading for the trading session to allow the price for thesecurity to settle near a trading range. The high count and the lowcount are based on level 1 trade price data.

Since major exchanges are auction markets, buyers and sellers competewith each other to buy and sell securities at desirable prices. At thebeginning of a trading session (referred to as an “opening balance”period), trades for each security are made over a range of prices thatestablish a market value range (or “opening balance” price range) forthe security. This opening balance price range is bounded by a highprice and a low price, and contains all of the trades falling betweenthe high price and the low price. Often, an entire session's trades fora security will fall within the opening balance price range.Occasionally, securities may experience a trending day, or a sessionwhen the security steadily advances in value or steadily declines invalue. During such a session, the security will typically move in thesame direction with some regularity and tend to close within fivepercent of the session's high (or low) trade value.

Certain traders would like to be able to identify when a security ishaving a trending day. Also, certain traders may be especiallyinterested when a security trades outside the security's opening balanceprice range. These factors could assist the trader in deciding when tobuy or sell a particular security.

The high count and the low count may serve as an indicator of trending,or that a particular security has a likelihood of advancing during thecourse of the trading session or declining during the course of thetrading session. Securities having a relatively large high count valuetend to be securities that have a likelihood of advancing during thecourse of the trading session. Securities having a relatively large lowcount value tend to be securities that have a likelihood of decliningduring the course of the trading session.

The count mode is intended to display to the user, on a real time ornear real time basis, the number of new intra-session highs and/or newintra-session lows for each displayed security once an opening balanceperiod has elapsed. Since each individual may have a different opinionas to how much time is needed for the market to establish a stableopening balance price range, the opening balance period during which newintra-session highs and new intra-session lows will be disregarded bythe securities tracking system 10 can be defined by the user. The timeperiod during which the securities tracking system 10 will disregard newintra-session highs and lows will be referred to herein as a count delayinterval. Some common count delay intervals can include, for example,zero minutes (i.e., the high count and low count are calculated from thestart of the trading session), fifteen minutes, thirty minutes, fortyfive minutes and sixty minutes.

Following the count delay interval, the securities tracking system 10will, for each security monitored in the count mode, increment a highcounter each time the security trades above the trading session's highfor the security. Similarly, the securities tracking system 10 will, foreach security monitored in the count mode and following the delayinterval, increment a low counter each time the security trades belowthe trading session's low for the security. It is noted that the tradingsession's high and low are updated each time a new high and/or low isreached and each trade is compared against the current high and low todetermine if the high counter or the low counter should be incremented.

As indicated, the securities for which the securities tracking system 10maintains the high count and the low count can optionally be filtered.For example, the securities can be filtered based on volume. Liquidityof a security can be a concern to traders when deciding when to place atrade. Should there not be sufficient trading volume in a security, thetrader cannot be assured that the trade (buy or sell) will proceed at ornear the desired value. The securities tracking system can allow theuser to filter out securities from the table 76 that do not exceed acertain liquidity threshold. For example, the volume filter can be basedon the previous trading session's traded volume. In one embodiment, thesecurities tracking system 10 can be configured to track the high countand the low count for securities that had a total trade volume ofgreater than a certain number of shares (e.g., 500,000 shares) duringthe previous session (or trading day). The threshold can be establishedglobally for all securities and/or on a security by security basis.

As one skilled in the art will appreciate, alternative volume filterscan be employed. As another example, the high count and the low countcan be maintained for all securities, but only those securities thatreach a certain trade volume for the current trading session will bedisplayed in table 76. As another example, the high count and the lowcount can be maintained for only those securities that reach a certaintrade volume after a predetermined time has elapsed. The predeterminedtime could be the same as the count delay interval or another timeperiod.

Another filter that can be used (with or without the volume filter) is aprice filter. Securities with a relatively low price (e.g., about $5.00or less) can have a high transactional cost relative to the total costof trading that security. Accordingly, the securities tracking system 10can be configured to track the high count and the low count forsecurities having a trade value of over a specified threshold. Thespecified threshold can be user definable, apply to all securitiesglobally and/or on a security by security basis, and/or can be setagainst various values (e.g., price at the close of the last session,current trade price, session's high, etc.).

Other filters, such as a user definable filter, can also be used aloneor in conjunction with the foregoing filters, to reduce the securitiestracked in the count mode to a desirable set of securities.

As indicated, the expanded count mode includes the derivation ofstatistics from the high and low count values. In turn, derivation ofthese statistics can commence after the opening balance period haselapsed and are based on data as filtered for generation of the high andlow count values.

An upward price movement indicator, also referred to herein as a highcount percentage value, for each displayed security can be displayed incolumn 92. The high count percentage can be calculated by dividing thehigh count (e.g., from column 88) by the day's range (e.g., thesession's high from column 84 minus the session's low from column 86)and rounding to the nearest tenth. The high count percentage indicatesthe number of new highs per dollar of trading range for the session. Arelatively high value for the high count percentage value can indicateaggressive upward price movement in the corresponding security.

A downward price movement indicator, also referred to herein as a lowcount percentage value, for each displayed security can be displayed incolumn 94. The low count percentage can be calculated by dividing thelow count (e.g., from column 90) by the day's range (e.g., the session'shigh from column 84 minus the session's low from column 86) and roundingto the nearest tenth. The low count percentage indicates the number ofnew lows per dollar of trading range for the session. A relative highvalue for the low count percentage value can indicate aggressivedownward price movement in the corresponding security.

A high opening balance range extension (OBRE) for each displayedsecurity can be displayed in column 96. The high OBRE is the number ofpoints, expressed in cents (or, alternatively, in dollars and cents),that the corresponding security has moved to establish the current hightrade value from a high established during the opening balance delayinterval. For example, if the current high in a security is $17.23 andthe high that was established at some point during the opening balancedelay interval was $16.01, then the high OBRE value for this securitywill be 122. As should be appreciated, the high OBRE is a measure of therange extension (price difference or distance), or “breakout,” above thehigh established during the opening balance delay interval.

A low OBRE for each displayed security can be displayed in column 98.The low OBRE is the number of points, expressed in cents (or,alternatively, in dollars and cents), that the corresponding securityhas moved to establish the current low trade value from a lowestablished during the opening balance delay interval. For example, ifthe current low in a security is $10.80 and the low that was establishedat some point during the opening balance delay interval was $11.00, thenthe low OBRE value for this security will be −20. As should beappreciated, the low OBRE is a measure of the range extension (pricedifference or distance), or “breakout,” below the low established duringthe opening balance delay interval.

A high OBRE percentage value for each displayed security can bedisplayed in column 100. The high OBRE percentage can be calculated bydividing the high OBRE (e.g., from column 96) by the day's range (e.g.,the session's high from column 84 minus the session's low from column86). The high OBRE percentage can be expressed as a percentage value.

A low OBRE percentage value for each displayed security can be displayedin column 102. The low OBRE percentage can be calculated by dividing thelow OBRE (e.g., from column 98) by the day's range (e.g., the session'shigh from column 84 minus the session's low from column 86). The lowOBRE percentage can be expressed as a percentage value.

Although not illustrated additional columns can be added to the expandedcount mode window 74, such as a volume column and a money flow column.The volume column can be used to show the number of shares traded thusfar during the trading session for each displayed security. As is knownin the art, the money flow column can show how much money is moving inor out of a particular stock. A positive money flow value for a securityindicates that money is flowing into the security, whereas a negativemoney flow indicates that money is flowing out of the security. Themoney flow value starts at zero for each trading session and is the sumof all net money flows during the session. Only trades with pricesdifferent from the previous ones are used in calculating money flow. Forexample, if a security is traded at $50.00 and a new trade of 100 sharesis made at $50.125, then an amount of 100 times $50.125 (or a net moneyflow of $5,012.50) is added to the current money flow value. If theprice of the new trade is lower than the previous trade, the money flowvalue is decreased in a corresponding manner. If there is no change inprice between sequential trades, then the net change is zero and themoney flow value will not be changed.

E. Action Montage Mode E(i). Action Montage Mode Overview

In the action montage mode, the user is presented with information thatmay be indicative of market driving activity. In the illustratedembodiment, the user is presented with information to monitor changes involumes both of trade activity and of market maker order activity. Inthe action montage mode, comparisons of average volume activity betweendifferent time periods can be made. This information can be useful indeciding when to buy or sell a particular security since changes inactivity are often connected with changes in price. For instance, a usermay want to know when the average trade volume over the last fiveminutes for a particular security is twice as high as the average tradevolume for the most recent thirty minutes. The action montage mode canshow this type of comparison. In addition, alarms can be set to alertthe user if a desired condition arises even if information relating toevents that would trigger the alarm are not actively displayed.

The action montage mode has different views for displaying actionrelated information, including a trades view, an orders view and anorder book view. For each of the views in the action montage mode,selective information derived from the level 1 and level 2 informationis displayed in association with each displayed ticker symbol, althoughthe statistics discussed herein can be calculated for each securitytracked by the securities tracking system 10 (this may include allsecurities in all of the user's watch lists or all securities on allexchanges from which data is received—even if the securities are ofdifferent type, such as a mix of stocks, futures and/or indices).

It is noted that the displayed statistics in the action montage mode canbe derived from data after application of the user selected level 2filter, and/or crossed market filter, refreshed on the display screen 28at a desired refresh rate and dynamically sorted as discussed herein. Inanother embodiment, the statistics for the action montage mode aredynamically calculated as level 1 and level 2 information is received,but analysis windows associated with the action montage mode are updatedonce a minute.

Each of the views in the action montage can be used to displaystatistics for a first time period (illustrated as “period 1”) versus asecond time period (illustrated as “period 2”). The time periods canhave any duration, but will typically range from about one minute toabout sixty minutes. The length of the first and second time periods canbe selected by user action such as typing in a selected length of timeor selecting from a drop down menu containing predetermined timelengths, such as one minute, five minutes, ten minutes, fifteen minutes,thirty minutes and sixty minutes. The first time period can be selectedto be shorter than, the same as or longer than the second time period.

E(ii). Action Montage Mode—Trades View

With reference to FIG. 4A, an analysis window 104 a is illustrated forthe action montage mode when placed in the trades view. In this mode andview, the action montage analysis window 104 a displays a table 106 aidentifying a group of securities (column 108 a) for which “tradeaction” information is displayed. Three different data sets can bedisplayed, which can be selected by user action such as “clicking on” adesired tab 110 a. The illustrated data sets include statistics relatingto number of trades that took place, the volume of shares that weretraded, and volume as a function of trades (e.g., average share volumeper trade calculated by dividing trade volume by the number of trades).For each of these data sets the basic database structure of the window104 a is same and, therefore, is illustrated only once. However, itshould be appreciated that the cells of the table 106 a will bepopulated with data corresponding to the selected tab 110 a. In theillustrated example, the number of trades tab 110 a has been selected.

In the illustrated example for the window 104 a, the first time periodhas been set to one minute and the second time period has been set tofive minutes; but, these time periods are changeable as set forth ingreater detail above. The table 106 a includes a period one total column112, a period one average column 114, a period two total column 116, aperiod two average column 118, a net total column 120, and a net averagecolumn 122.

E(ii)(a). Action Montage Mode—Trades View—Trades Tab

When the number of trades tab 110 a is selected, the period one totalcolumn 112 will display, for each corresponding security, the totalnumber of trades taking place during the most recent length of timecorresponding to the time length selected for period one (in theillustrated example, column 112 would display the number of tradestaking place in the last minute). In the period one average column 114,the average number of trades per minute during the most recent length oftime corresponding to the time length selected for period one would bedisplayed. For example, if the period one time length were ten minutesand 400 total trades were made, the average column 114 would show avalue of 40. If the length of time for period one were selected to beone minute, the average (column 114) and the total (column 112) would bethe same.

When the number of trades tab 110 a is selected, the period two totalcolumn 116 will display, for each corresponding security, the totalnumber of trades taking place during the most recent length of timecorresponding to the time length selected for period two (in theillustrated example, column 116 would display the number of tradestaking place in the last five minutes). In the period two average column116, the average number of trades per minute during the most recentlength of time corresponding to the time length selected for period twowould be displayed.

When the number of trades tab 110 a is selected, the net total column120 shows a difference between the total trades of the first time period(e.g., column 112) and the total trades of the second time period (e.g.,column 116). In one embodiment, the value for the net total column canbe calculated by subtracting the corresponding value in column 112 fromthe corresponding value in column 116 (e.g., total for time period twominus total for time period one). The net average column 122 shows a netdifference in the average from time period one (e.g., column 114) theaverage from time period two (e.g., column 118) and can be calculated bysubtracting the corresponding value in column 114 from the correspondingvalue in column 118 (e.g., average for time period two minus average fortime period one).

E(ii)(b). Action Montage Mode—Trades View—Volume Tab

When the volume tab 110 a is selected, the period one total column 112will display, for each corresponding security, the total volume ofshares traded during the most recent length of time corresponding to thetime length selected for period one (in the illustrated example, column112 would display the volume traded in the last minute). In the periodone average column 114, the average volume per minute during the mostrecent length of time corresponding to the time length selected forperiod one would be displayed. For example, if the period one timelength were ten minutes and 40,000 total shares were traded, the averagecolumn 114 would show a value of 4,000. If the length of time for periodone were selected to be one minute, the average and the total (column112) would be the same.

When the volume tab 110 a is selected, the period two total column 116will display, for each corresponding security, the total volume ofshares traded during the most recent length of time corresponding to thetime length selected for period two (in the illustrated example, column116 would display the volume traded in the last five minutes). In theperiod two average column 118, the average volume per minute during themost recent length of time corresponding to the time length selected forperiod two would be displayed.

When the volume tab 110 a is selected, the net total column 120 shows adifference between the total shares traded for the first time period(e.g., column 112) and the total shares traded for the second timeperiod (e.g., column 116). In one embodiment, the value for the nettotal column can be calculated by subtracting the corresponding value incolumn 112 from the corresponding value in column 116 (e.g., total fortime period two minus total for time period one). The net average column122 shows a net difference in the average from time period one (e.g.,column 114) the average from time period two (e.g., column 118) and canbe calculated by subtracting the corresponding value in column 114 fromthe corresponding value in column 118 (e.g., average for time period twominus average for time period one).

E(ii)(c). Action Montage Mode—Trades View—Volume per Trade Tab

When the volume per trade tab 110 a is selected, the period one averagecolumn 114 will display, for each corresponding security, the averagevolume of shares per trade during the most recent length of timecorresponding to the time length selected for period one (in theillustrated example, column 114 would display the average volume pertrade in the last minute). It is noted that no statistics would bedisplayed in column 112 for this mode of operation and, optionally,column 112 can be omitted from the table 106 a. For example, if theperiod one time length were ten minutes and an average of 500 shares pertrade were made during the time period, the average column 114 wouldshow a value of 500.

When the volume per trade tab 110 a is selected, the period two averagecolumn 118 will display, for each corresponding security, the averagevolume of shares per trade during the most recent length of timecorresponding to the time length selected for period two (in theillustrated example, column 118 would display the average volume pertrade in the last five minutes). It is noted that no statistics would bedisplayed in column 116 for this mode of operation and, optionally,column 116 can be omitted from the table 106 a.

When the volume per trade tab 110 a is selected, the net average column122 shows a net difference in the average from time period one (e.g.,column 114) and the average from time period two (e.g., column 118) andcan be calculated by subtracting the corresponding value in column 114from the corresponding value in column 118 (e.g., average for timeperiod two minus average for time period one). It is noted that nostatistics would be displayed in column 120 for this mode of operationand, optionally, column 120 can be omitted from the table 106 a.

E(iii). Action Montage Mode—Orders View

With reference to FIG. 4B, an analysis window 104 b is illustrated forthe action montage mode when placed in the orders view. In this mode andview, the action montage analysis window 104 b displays a table 106 bidentifying a group of securities (column 108 b) for which “ordersaction” information is displayed. Three different data sets can bedisplayed, which can be selected by user action such as “clicking on” adesired tab 110 b. The illustrated data sets include statistics relatingto number of orders that were place by market makers, the total volumeof shares ordered, and volume as a function of orders (e.g., averageshare volume per order calculated by dividing order volume by the numberof orders). For each of these data sets the basic database structure ofthe window 104 b is same and, therefore, is illustrated only once.However, it should be appreciated that the cells of the table 106 b willbe populated with data corresponding to the selected tab 110 b. In theillustrated example, the number of orders tab 110 b has been selected.

In the illustrated example for the window 104 b, the first time periodhas been set to one minute and the second time period has been set tothirty minutes; but, these time periods are changeable as set forth ingreater detail above. The table 106 b includes a period one bid totalcolumn 124, a period one bid average column 126, a period one ask totalcolumn 128, a period one ask average column 130, a period two bid totalcolumn 132, a period two bid average column 134, a period two ask totalcolumn 136, a period two ask average column 138, a bid net column 140, abid net average column 142, an ask net column 144, and an ask netaverage column 146.

E(iii)(a). Action Montage Mode—Orders View—Orders Tab

When the number of orders tab 110 b is selected, the period one bidtotal column 124 will display, for each corresponding security, thetotal number of bid orders placed during the most recent length of timecorresponding to the time length selected for period one. In the periodone bid average column 126, the average number of bid orders per minuteduring the most recent length of time corresponding to the time lengthselected for period one would be displayed. The period one ask totalcolumn 128 will display, for each corresponding security, the totalnumber of ask orders placed during the most recent length of timecorresponding to the time length selected for period one. In the periodone ask average column 130, the average number of ask orders per minuteduring the most recent length of time corresponding to the time lengthselected for period one would be displayed.

When the number of orders tab 110 b is selected, the period two bidtotal column 132 will display, for each corresponding security, thetotal number of bid orders placed during the most recent length of timecorresponding to the time length selected for period two. In the periodtwo bid average column 134, the average number of bid orders per minuteduring the most recent length of time corresponding to the time lengthselected for period two would be displayed. The period two ask totalcolumn 136 will display, for each corresponding security, the totalnumber of ask orders placed during the most recent length of timecorresponding to the time length selected for period two. In the periodtwo ask average column 138, the average number of ask orders per minuteduring the most recent length of time corresponding to the time lengthselected for period two would be displayed.

When the number of orders tab 110 b is selected, the bid net column 140shows a difference between the total bid orders of the first time period(e.g., column 124) and the total bid orders of the second time period(e.g., column 132). In one embodiment, the value for the net bid column140 can be calculated by subtracting the corresponding value in column124 from the corresponding value in column 132. The bid net averagecolumn 142 shows a net difference in the bid average from time periodone (e.g., column 126) and the bid average from time period two (e.g.,column 134) and can be calculated by subtracting the corresponding valuein column 126 from the corresponding value in column 134. The ask netcolumn 144 shows a difference between the total ask orders of the firsttime period (e.g., column 128) and the total ask orders of the secondtime period (e.g., column 136). In one embodiment, the value for the netask column 144 can be calculated by subtracting the corresponding valuein column 128 from the corresponding value in column 136. The ask netaverage column 146 shows a net difference in the ask average from timeperiod one (e.g., column 130) and the ask average from time period two(e.g., column 138) and can be calculated by subtracting thecorresponding value in column 130 from the corresponding value in column138.

E(iii)(b). Action Montage Mode—Orders View—Volume Tab

When the volume tab 110 b is selected, the period one bid total column124 will display, for each corresponding security, the total volume ofshares for all bid orders placed during the most recent length of timecorresponding to the time length selected for period one. In the periodone bid average column 126, the average volume of all bid orders perminute during the most recent length of time corresponding to the timelength selected for period one would be displayed. The period one asktotal column 128 will display, for each corresponding security, thetotal volume of shares for all ask orders placed during the most recentlength of time corresponding to the time length selected for period one.In the period one ask average column 130, the average volume of all askorders per minute during the most recent length of time corresponding tothe time length selected for period one would be displayed.

When the volume tab 110 b is selected, the period two bid total column132 will display, for each corresponding security, the total volume ofshares for all bid orders placed during the most recent length of timecorresponding to the time length selected for period two. In the periodtwo bid average column 134, the average volume of all bid orders perminute during the most recent length of time corresponding to the timelength selected for period two would be displayed. The period two asktotal column 136 will display, for each corresponding security, thetotal volume of shares for all ask orders placed during the most recentlength of time corresponding to the time length selected for period two.In the period two bid average column 138, the average volume of all askorders per minute during the most recent length of time corresponding tothe time length selected for period two would be displayed.

When the volume tab 110 b is selected, the bid net column 140 shows adifference between the total volume of bid orders of the first timeperiod (e.g., column 124) and the total volume of bid orders of thesecond time period (e.g., column 132) (e.g., calculated by subtractingthe corresponding value in column 124 from the corresponding value incolumn 132). The bid net average column 142 shows a net difference inthe bid volume average from time period one (e.g., column 126) and thebid volume average from time period two (e.g., column 134) and can becalculated by subtracting the corresponding value in column 126 from thecorresponding value in column 134. The ask net column 144 shows adifference between the total volume of ask orders of the first timeperiod (e.g., column 128) and the total volume of ask orders of thesecond time period (e.g., column 136) (e.g., calculated by subtractingthe corresponding value in column 128 from the corresponding value incolumn 136). The ask net average column 146 shows a net difference inthe ask volume average from time period one (e.g., column 130) and theask volume average from time period two (e.g., column 138) and can becalculated by subtracting the corresponding value in column 130 from thecorresponding value in column 138.

E(iii)(c). Action Montage Mode—Orders View—Volume per Order Tab

When the volume per order tab 110 b is selected, the period one bidaverage column 126 will display, for each corresponding security, theaverage volume of shares per bid for all bids placed during the mostrecent length of time corresponding to the time length selected forperiod one (in the illustrated example, column 126 would display theaverage volume per bid order in the last minute). It is noted that nostatistics would be displayed in column 124 for this mode of operationand, optionally, column 124 can be omitted from the table 106 b. Theperiod one ask average column 130 will display, for each correspondingsecurity, the average volume of shares per ask for all asks placedduring the most recent length of time corresponding to the time lengthselected for period one. It is noted that no statistics would bedisplayed in column 128 for this mode of operation and, optionally,column 128 can be omitted from the table 106 b.

When the volume per order tab 110 b is selected, the period two bidaverage column 134 will display, for each corresponding security, theaverage volume of shares per bid for all bids placed during the mostrecent length of time corresponding to the time length selected forperiod two (in the illustrated example, column 134 would display theaverage volume per bid order in the last thirty minutes). It is notedthat no statistics would be displayed in column 132 for this mode ofoperation and, optionally, column 132 can be omitted from the table 106b. The period two ask average column 138 will display, for eachcorresponding security, the average volume of shares per ask for allasks placed during the most recent length of time corresponding to thetime length selected for period two. It is noted that no statisticswould be displayed in column 136 for this mode of operation and,optionally, column 136 can be omitted from the table 106 b.

When the volume per order tab 110 b is selected, the bid net averagecolumn 142 shows a net difference in the bid volume per bid average fromtime period one (e.g., column 126) and the bid volume per bid averagefrom time period two (e.g., column 134) and can be calculated bysubtracting the corresponding value in column 126 from the correspondingvalue in column 134. It is noted that no statistics would be displayedin column 140 for this mode of operation and, optionally, column 140 canbe omitted from the table 106 b. The ask net average column 146 shows anet difference in the ask volume per ask average from time period one(e.g., column 130) and the ask volume per ask average from time periodtwo (e.g., column 138) and can be calculated by subtracting thecorresponding value in column 130 from the corresponding value in column138. It is noted that no statistics would be displayed in column 144 forthis mode of operation and, optionally, column 144 can be omitted fromthe table 106 b.

E(iv). Action Montage Mode—Order Book View

With reference to FIG. 4C, an analysis window 104 c is illustrated forthe action montage mode when placed in the order book view. In this modeand view, the action montage analysis window 104 c displays a table 106c identifying a group of securities (column 108 c) for which “order bookaction” information is displayed. Three different data sets can bedisplayed, which can be selected by user action such as “clicking on” adesired tab 110 c.

The illustrated data sets are based on activity of a particular marketmaker. The market maker for which data is displayed can be selectedfrom, for example, a market maker drop-down menu. The order book viewdiffers from the orders view in that the orders view displayed datarelating to the activity of all market makers. Also, in the order bookview, data is only presented for those securities for which the selectedmarket maker has an active order pending.

The illustrated data sets for the orders book view include statisticsrelating to number of orders that were placed by the selected marketmaker per security, the total volume of shares ordered per security, andvolume as a function of orders (e.g., average share volume per ordercalculated by dividing order volume by the number of orders). For eachof these data sets the basic database structure of the window 104 c issame and, therefore, is illustrated only once. However, it should beappreciated that the cells of the table 106 c will be populated withdata corresponding to the selected tab 110 c. In the illustratedexample, the number of orders tab 110 c has been selected.

In the illustrated example for the window 104 c, the first time periodhas been set to fifteen minutes and the second time period has been setto five minutes; but, these time periods are changeable as set forth ingreater detail above. The table 106 c includes a period one bid totalcolumn 148, a period one bid average column 150, a period one ask totalcolumn 152, a period one ask average column 154, a period two bid totalcolumn 156, a period two bid average column 158, a period two ask totalcolumn 160, a period two ask average column 162, a bid net column 164, abid net average column 166, an ask net column 168, and an ask netaverage column 170.

E(iv)(a). Action Montage Mode—Order Book View—Order Tab

When the number of orders tab 110 c is selected, the period one bidtotal column 148 will display, for each corresponding security, thetotal number of bid orders placed by the selected market maker duringthe most recent length of time corresponding to the time length selectedfor period one. In the period one bid average column 150, the averagenumber of bid orders placed by the selected market maker per minuteduring the most recent length of time corresponding to the time lengthselected for period one would be displayed. The period one ask totalcolumn 152 will display, for each corresponding security, the totalnumber of ask orders placed by the selected market maker during the mostrecent length of time corresponding to the time length selected forperiod one. In the period one ask average column 154, the average numberof ask orders placed by the selected market maker per minute during themost recent length of time corresponding to the time length selected forperiod one would be displayed.

When the number of orders tab 110 c is selected, the period two bidtotal column 156 will display, for each corresponding security, thetotal number of bid orders placed by the selected market maker duringthe most recent length of time corresponding to the time length selectedfor period two. In the period two bid average column 158, the averagenumber of bid orders placed by the selected market maker per minuteduring the most recent length of time corresponding to the time lengthselected for period two would be displayed. The period two ask totalcolumn 160 will display, for each corresponding security, the totalnumber of ask orders placed by the selected market maker during the mostrecent length of time corresponding to the time length selected forperiod two. In the period two ask average column 162, the average numberof ask orders placed by the selected market maker per minute during themost recent length of time corresponding to the time length selected forperiod two would be displayed.

When the number of orders tab 110 c is selected, the bid net column 164shows a difference between the total bid orders of the first time period(e.g., column 148) and the total bid orders of the second time period(e.g., column 156). In one embodiment, the value for the net bid column164 can be calculated by subtracting the corresponding value in column148 from the corresponding value in column 156 The bid net averagecolumn 166 shows a net difference in the bid average from time periodone (e.g., column 150) and the bid average from time period two (e.g.,column 158) and can be calculated by subtracting the corresponding valuein column 150 from the corresponding value in column 158. The ask netcolumn 168 shows a difference between the total ask orders of the firsttime period (e.g., column 152) and the total ask orders of the secondtime period (e.g., column 160). In one embodiment, the value for the netask column 168 can be calculated by subtracting the corresponding valuein column 152 from the corresponding value in column 160. The ask netaverage column 170 shows a net difference in the ask average from timeperiod one (e.g., column 154) and the ask average from time period two(e.g., column 162) and can be calculated by subtracting thecorresponding value in column 154 from the corresponding value in column162.

E(iv)(b). Action Montage Mode—Order Book View—Volume Tab

When the volume tab 110 c is selected, the period one bid total column148 will display, for each corresponding security, the total volume ofshares for all bid orders placed by the selected market maker during themost recent length of time corresponding to the time length selected forperiod one. In the period one bid average column 150, the average volumeof all bid orders placed by the selected market maker per minute duringthe most recent length of time corresponding to the time length selectedfor period one would be displayed. The period one ask total column 152will display, for each corresponding security, the total volume ofshares for all ask orders placed by the selected market maker during themost recent length of time corresponding to the time length selected forperiod one. In the period one ask average column 154, the average volumeof all ask orders placed by the selected market maker per minute duringthe most recent length of time corresponding to the time length selectedfor period one would be displayed.

When the volume tab 110 c is selected, the period two bid total column156 will display, for each corresponding security, the total volume ofshares for all bid orders placed by the selected market maker during themost recent length of time corresponding to the time length selected forperiod two. In the period two bid average column 158, the average volumeof all bid orders placed by the selected market maker per minute duringthe most recent length of time corresponding to the time length selectedfor period two would be displayed. The period two ask total column 160will display, for each corresponding security, the total volume ofshares for all ask orders placed by the selected market maker during themost recent length of time corresponding to the time length selected forperiod two. In the period two bid average column 162, the average volumeof all ask orders placed by the selected market maker per minute duringthe most recent length of time corresponding to the time length selectedfor period two would be displayed.

When the volume tab 110 c is selected, the bid net column 164 shows adifference between the total volume of bid orders of the first timeperiod (e.g., column 148) and the total volume of bid orders of thesecond time period (e.g., column 156) (e.g., calculated by subtractingthe corresponding value in column 148 from the corresponding value incolumn 156). The bid net average column 166 shows a net difference inthe bid volume average from time period one (e.g., column 150) and thebid volume average from time period two (e.g., column 158) and can becalculated by subtracting the corresponding value in column 150 from thecorresponding value in column 158. The ask net column 168 shows adifference between the total volume of ask orders of the first timeperiod (e.g., column 152) and the total volume of ask orders of thesecond time period (e.g., column 160) (e.g., calculated by subtractingthe corresponding value in column 152 from the corresponding value incolumn 160). The ask net average column 170 shows a net difference inthe ask volume average from time period one (e.g., column 154) and theask volume average from time period two (e.g., column 162) and can becalculated by subtracting the corresponding value in column 154 from thecorresponding value in column 162.

E(iv)(c). Action Montage Mode—Order Book View—Volume per Order Tab

When the volume per order tab 110 c is selected, the period one bidaverage column 150 will display, for each corresponding security, theaverage volume of shares ordered for all bids placed by the selectedmarket maker during the most recent length of time corresponding to thetime length selected for period one (in the illustrated example, column150 would display the average volume per bid order in the last fifteenminutes). It is noted that no statistics would be displayed in column148 for this mode of operation and, optionally, column 148 can beomitted from the table 106 c. The period one ask average column 154 willdisplay, for each corresponding security, the average volume of sharesper order for all asks placed by the selected market maker during themost recent length of time corresponding to the time length selected forperiod one. It is noted that no statistics would be displayed in column152 for this mode of operation and, optionally, column 152 can beomitted from the table 106 c.

When the volume per order tab 110 c is selected, the period two bidaverage column 158 will display, for each corresponding security, theaverage volume of shares ordered for all bids placed by the selectedmarket maker during the most recent length of time corresponding to thetime length selected for period two (in the illustrated example, column158 would display the average volume per bid order in the last fiveminutes). It is noted that no statistics would be displayed in column156 for this mode of operation and, optionally, column 156 can beomitted from the table 106 c. The period two ask average column 162 willdisplay, for each corresponding security, the average volume of sharesper order for all asks placed by the selected market maker during themost recent length of time corresponding to the time length selected forperiod two. It is noted that no statistics would be displayed in column160 for this mode of operation and, optionally, column 160 can beomitted from the table 106 c.

When the volume per order tab 110 c is selected, the bid net averagecolumn 166 shows a net difference in the bid volume per order averagefrom time period one (e.g., column 150) and the bid volume per orderaverage from time period two (e.g., column 158) and can be calculated bysubtracting the corresponding value in column 150 from the correspondingvalue in column 158. It is noted that no statistics would be displayedin column 164 for this mode of operation and, optionally, column 164 canbe omitted from the table 106 c. The ask net average column 170 shows anet difference in the ask volume per order average from time period one(e.g., column 154) and the ask volume per order average from time periodtwo (e.g., column 162) and can be calculated by subtracting thecorresponding value in column 154 from the corresponding value in column162. It is noted that no statistics would be displayed in column 168 forthis mode of operation and, optionally, column 168 can be omitted fromthe table 106 c.

E(v). Additional and Alternative Embodiments for the Action Montage Mode

As should be appreciated, additional and alternative embodiments for theaction montage mode exists. For example, a user can open two or moreinstantiations for the order book mode to observe whether differentmarket makers are behaving in a similar or different manner with respectto one or more securities.

As indicated above, in one embodiment, the displayed windows 104 of theaction montage mode can be updated about once per minute. In anotherembodiment, the updates can be made at a different interval, such asabout once a second. Also, some or all of the statistics can bepresented as a moving average (e.g, a simple moving average or anexponential moving average).

The user can also be given the option of comparing a certain time spanof the present trading session with the “action” from the same relativetime period of a previous trading session (e.g., the prior tradingsession) or an average from multiple previous trading sessions (e.g.,the average for the same relative time period for each of prior fivetrading sessions). In this embodiment, the columns associated with thesecond time period (period two) could be used to display the statisticsfrom the prior session(s) and the columns associated with comparingperiod one and period two could be used to display comparisons from thepresent trading session and the previous trading session(s). As anexample, a user may be interested in observing the action montage modestatistics for the last half hour of the trading session relative to thesame period from the past thirty days computed on an average dailybasis.

Another feature that can be added is an identification of the biddingmarket maker and/or the asking market maker (including traditionalmarket makers, electronic change networks and regional exchanges)associated with specific trades. As a variation, an entire window can beadded to show statistics relating to actual trades made by a specificmarket maker, which could be displayed in similar format to the orderbook action montage window 104 c.

Another feature can be a direct comparison of one market maker'sactivity to another specific market makers activity (e.g., theillustrated period one columns replaced with a first market maker'sactivity for a certain time period and the illustrated period twocolumns replaced with a second market maker's activity for the same timeperiod). Alternatively, a direct comparison of one (or more) marketmaker's activity to multiple market makers' activity can be made (e.g.,the illustrated period one columns can be replaced with a first marketmaker's activity for a certain time period and the illustrated periodtwo columns can be replaced with multiple market makers' activity, suchas all other market makers' activity combined or a user defined group ofmarket makers).

The system 10 can filter the displayed information such that symbolshaving traded volume below a specified volume threshold and/or a tradeprice below a specified price threshold can be excluded from display inthe action montage mode windows 104. Another filter can be used toexclude bids and/or asks from the calculations of the statisticsdisplayed in the order view and/or the order/book view that are one ormore tiers away from the inside bid/ask.

F. Insiders Montage Mode

The insiders montage mode is based on the premise that market makers whoare attempting to buy or sell a large volume of shares in a securitywill attempt to obfuscate this activity. The reason is that marketmakers are obligated to attempt to buy at the lowest possible price andsell at the highest possible price. If a market maker shows greatinterest in buying a security (e.g., by placing large volume orders),the price will likely increase for that security. Similarly, if a marketmaker shows a great interest in selling a security, the price willlikely decline for that security. One common technique to hide a marketmakers true activity is to attempt to place a large number of tradeswhere each of those trades has a relatively small volume.

In the insiders montage mode, the user is presented with informationindicative of persistent attempts by a market maker to buy and/or sell aparticular security, thereby providing the user with insight as to thecurrent major market participants for a given security. Some of thestatistics for the insiders montage mode are based on time and othersare based on market activity. With additional reference to FIG. 5, ananalysis window 172 is illustrated for the insiders montage mode. Inthis mode, the insiders montage analysis window 172 displays a table 174identifying a list of symbols in column 176. Each market maker havingactivity relating to a security of column 176 is identified in column178. Accordingly, any particular security may be listed multiple timesin column 176 for each market maker having orders for that security aslisted in column 178.

Selective information derived from the level 1 and level 2 informationis displayed in association with each displayed pair of ticker symbol(column 176) and market maker identifier (column 178). Although thestatistics discussed herein can be calculated for each security trackedby the securities tracking system 10 (this may include all securities inall of the user's watch lists or all securities on all exchanges fromwhich data is received—even if the securities are of different type,such as a mix of stocks, futures and/or indices).

The displayed information, for each security/market maker pair, caninclude a top player statistic for bids and asks (respectively, columns180 and 182), a first hatchet statistic for bids and asks (respectively,columns 184 and 186), a last hatchet statistic for bids and asks(respectively, columns 188 and 190), a total hatchet statistic for bidsand asks (respectively, columns 192 and 194), a trade percentagestatistic for bids and asks (respectively, columns 196 and 198) and atime percentage statistic for bids and asks (respectively, columns 200and 202).

It is noted that the displayed statistics of the insiders montage modewindow 172 can be derived from data after application of the userselected level 2 filter, and/or crossed market filter, refreshed on thedisplay screen 28 at a desired refresh rate and dynamically sorted asdiscussed herein.

Other filters for the display of data in the insiders montage modewindow 172 can be applied. For example, only certain securities (e.g.,as selected using a drop down menu 204) can be presented in the table174. The selected securities can include all securities, one security ora user selected combination of securities. As another example, onlycertain market makers or types of market makers (e.g., as selected usinga drop down menu 206) can be presented in the table 174. The selectedmarket makers can include all market makers, all traditional marketmakers, all electronic change networks (ECNs), all regional exchanges,all non-ECNs, one particular market maker or a user selected combinationof market makers.

A volume filter (e.g., as selected using a drop down menu 208) can alsobe applied. For example, the system 10 can filter the displayedinformation such that symbols having a traded volume below a specifiedvolume threshold are not shown in the table 174.

A price filter (e.g., as selected using a drop down menu 210) can alsobe applied. For example, the system 10 can filter the displayedinformation such that symbols having a trade price below a specifiedprice threshold (e.g., for a prior trading session or the currenttrading session) are excluded from display in the table 174.

As indicated, the insiders montage mode is used to display statisticscalculated by the system 10 that are indicative of a market maker'spersistence at the inside market. More specifically, when a market makerdesires to add a position, that market maker needs to be one of the mostaggressive bidders. Conversely, when a market maker desires to sell aposition, the market maker needs to be one of the most aggressiveoffering market makers for that security. In some situations, a marketmaker may desire to conceal activity relating to one or more securitiesby only placing orders of small volumes persistently at or near theinside market. As an example, over the course of three days in the year2000, Goldman Sachs sold off a very large position in World Com (tickersymbol WCOM) stock by offering 1,000 or fewer shares at a time at pricesthat were at or near the lowest ask price. The insider mode is intendedto assist in apprizing the user of this type of aggressive purchase orsell action by one or more market makers.

The time percentage columns 200 and 202 can be used to display a marketmaker persistence statistic akin to a moving average, or exponentialsmoothing, to track market maker presence at the inside market. Thepersistence statistic is expressed as a percentage and is approximatelythe percentage of the time a particular market maker has had the mostaggressive bid or the most aggressive ask for any particular securityover a specified period of time. The persistence statistic can becalculated for each security and market maker pair over any period oftime, such as a three-minute interval or a fifteen minute interval. Thetime percentage persistence statistic is discussed in greater detail inthe above-mentioned U.S. patent application Ser. No. 10/167,950 and willnot be described in greater detail herein.

As indicated, a top player statistic for bids and asks can be kept foreach security/market maker pair. The bid top player statistic is anumerical count of how many times the corresponding market maker placeda bid at the inside bid during the current trading session for thecorresponding security, and can be displayed in column 180. The ask topplayer statistic is a numerical count of how many times thecorresponding market maker placed an ask at the inside ask during thecurrent trading session for the corresponding security, and can bedisplayed in column 182. Each of the bid top player and the ask topplayer statistics can start with a zero value at the beginning of eachtrading session and the values are incremented as the trading sessionprogresses and the market makers place orders having an inside price. Asshould be appreciated, there can be more than one market maker having aninside bid and/or an inside ask at any given time.

As used herein, the term “hatchet” is given to a market maker when thatmarket maker is the only market maker having an order at an inside pricefor a particular security. Statistics regarding hatchet-type activityfor each security/market maker pair can be kept for both bids and asks.For example, a first bid hatchet (column 184) is a numerical count ofhow many times the corresponding market maker is the first market makerto post an inside bid that is higher than the immediately precedinginside bid for the corresponding security. In an alternative embodiment,the first bid hatchet can be a numerical count of how many times thecorresponding market maker is the first market maker to post an insidebid that is higher than all previous inside bids for the trading sessionand for the corresponding security. Similarly, a first ask hatchet(column 186) is a numerical count of how many times the correspondingmarket maker is the first market maker to post an inside ask that islower than the immediately preceding inside ask for the correspondingsecurity. In an alternative embodiment, the first ask hatchet can be anumerical count of how many times the corresponding market maker is thefirst market maker to post an inside ask that is lower than all previousinside asks for the trading session and for the corresponding security.As should be appreciated, when a market maker becomes the first bidhatchet or the first ask hatchet for a given security, that market makerwill also have their corresponding top player statistic incremented. Asshould also be appreciated, the first bid hatchet and the first askhatchet for a given security may be subsequently joined by other marketmakers at the inside price established by the hatcheting market maker.These joining market makers will have their corresponding top playerstatistics incremented.

Column 188 can be used to display a last bid hatchet statistic, which isa numerical count of how many times the corresponding market maker isthe last market maker to leave an inside bid price for the correspondingsecurity. In one embodiment, as a prerequisite to being the last bidhatchet, there must have been two or more market makers at the insidebid price. As the market makers drop from the inside bid by one ofsatisfaction of their order, expiration of their bid or lowering theirbid, the remaining market maker is the last bid hatchet and will havetheir corresponding last bid hatchet value incremented. Should theinside bid price move to a higher price while there are multiple marketmakers at the inside bid, no market maker will have their last bidhatchet statistic incremented for the security.

Column 190 can be used to display a last ask hatchet statistic, which isa numerical count of how many times the corresponding market maker isthe last market maker to leave an inside ask price for the correspondingsecurity. In one embodiment, as a prerequisite to being the last askhatchet, there must have been two or more market makers at the insideask price. As the market makers drop from the inside ask by one ofsatisfaction of their order, expiration of their ask or raising theirask, the remaining market maker is the last ask hatchet and will havetheir corresponding last ask hatchet value incremented. Should theinside ask price move to a lower price while there are multiple marketmakers at the inside ask, no market maker will have their last askhatchet statistic incremented for the security.

Column 192 can be used to display a total bid hatchet statistic, whichcan be a sum of the corresponding first bid hatchet value from column184 and a the corresponding last bid hatchet value from column 188.Column 194 can be used to display a total ask hatchet statistic, whichcan be a sum of the corresponding first ask hatchet value from column186 and a the corresponding last ask hatchet value from column 190.

Each of the hatchet statistic values described herein can start with azero value at the beginning of each trading session and the values areincremented as the trading session progresses.

As with the foregoing statistics of the insiders montage mode, the tradepercentage statistics of column 196 (for bids) and column 198 (for asks)are intended to be indicators of insider activity. For eachsecurity/market maker pair and separately for bids and asks, the tradepercentage statistics are an approximate percentage of the lastpredetermined number of trades that the corresponding market maker wasat the inside price. In one embodiment, the predetermined number oftrades is one hundred eighty, but can be changed to reflect a larger orsmaller number of trades. The trade percentage statistics can becalculated using any suitable technique, including a simple movingaverage, an exponential moving average, a weighted moving average, alinear regression, or other mathematical averaging technique. Arelatively high trade percentage statistic value is an indicator thatthe corresponding market maker is involved with a high percent of thetrades for the corresponding security. Therefore, from the tradepercentage statistics, the market maker(s) having the most influence inactivity for a particular security can be inferred.

The trade percentage statistics can be calculated by assigning a valueof one (1) to bids and asks having a price that this the same as thetrade price. Otherwise, the bids and asks are given a value of zero (0).In one embodiment, the bid values for each market maker and eachsecurity are tracked over the predetermined number of trades andconverted into a percentage by numerically summing all of the bid valuesassigned to each market maker on a security by security basis anddividing that number by the predetermined number of trades. The askvalues for each market maker and each security are tracked over thepredetermined number of trades and converted into a percentage bynumerically summing all of the ask values assigned to each market makeron a security by security basis and dividing that number by thepredetermined number of trades.

According to another embodiment of the invention, an exponentiallysmoothed trade persistence percentage is calculated by separatelysumming each bid or ask according to an exponential average where thecurrent sum of all values (ΣVALc) is calculated according to equation 2as follows: $\begin{matrix}{{\Sigma\quad{VALc}} = ( {{\Sigma\quad{VALp}} + \frac{{CV} - {\Sigma\quad{VALp}}}{m}} )} & {{Eq}.\quad 2}\end{matrix}$

In equation 2, m is the predetermined number of trades, CV is thecurrent value assigned to the marker maker (one or zero) and ΣVALp isthe prior sum of all values calculated according to equation 2 one tradeearlier. The ΣVALc value is multiplied by 100 to arrive at a percentage,that percentage representing the exponential average of the aggregationof each bid or ask value for the market maker for a selected securityover the number of trades of interest. Equation 2 is solved separatelyfor bid and ask values.

CONCLUSION

Although particular embodiments of the invention have been described indetail, it is understood that the invention is not limitedcorrespondingly in scope, but includes all changes, modifications andequivalents coming within the spirit and terms of the claims appendedhereto.

1. A method of tracking activity of a plurality of market makersrelating to securities traded on at least one common exchange where themarket makers place bids and asks, comprising: receiving a dynamicallyupdated data stream containing level 1 and level 2 data relating to aplurality of securities traded over the at least one exchange, the level1 data including at least the last trade price, inside bid and insideask of each security and the level 2 data containing a bid price, a bidtime, a bid volume, a security identifier, and a market maker identifierfor each bid, and an ask price, an ask volume, an ask time, a securityidentifier and a market maker identifier for each ask; and analyzing thedata stream for a set of symbols to derive a statistic indicative ofactivity of an inside market for each of the symbols, the statisticupdated to correspond to content of the updated data stream and thestatistic selected from at least one of a total number of market makersat the inside market, and a difference between a number of market makersat an inside bid price and a number of market makers at an inside askprice.
 2. The method according to claim 1, further comprising displayingat least one of the statistics indicative of activity of the insidemarket in at least one of a table or a chart for each correspondingsymbol.
 3. The method according to claim 2, further comprisingdynamically sorting the at least one of the table or the chart based ona parameter selected by the user to reflect current market activity. 4.The method according to claim 1, further comprising filtering the datastream, the filtering including discarding bids having a price lowerthan the last trade value minus one of a selected threshold percentageof the last trade value or a fixed price away, and discarding askshaving a price higher than the last trade value plus one of a selectedthreshold percentage of the last trade value or a fixed price away. 5.The method according to claim 4, wherein filtering is conducted for aplurality of selected threshold percentages or fixed prices away, andfor each selected threshold percentage or fixed price away acorresponding data set is derived, the statistic being calculated andupdated for each symbol for each data set.
 6. The method according toclaim 1, further comprising filtering the data stream for each symbolbased on traded volume.
 7. The method according to claim 1, furthercomprising filtering the data stream for each symbol based on tradedprice.
 8. A method of tracking activity of a plurality of market makersrelating to securities traded on at least one common exchange where themarket makers place bids and asks, comprising: receiving a dynamicallyupdated data stream containing level 1 and level 2 data relating to aplurality of securities traded over the at least one exchange, the level1 data including at least the last trade price, inside bid and insideask of each security and the level 2 data containing a bid price, a bidtime, a bid volume, a security identifier, and a market maker identifierfor each bid, and an ask price, an ask volume, an ask time, a securityidentifier and a market maker identifier for each ask; and analyzing thedata stream for a set of symbols to derive a statistic indicative ofvolume activity of an inside market for each of the symbols, thestatistic updated to correspond to content of the updated data streamand the statistic selected from at least one of a total volume of sharesat the inside market, a difference between a number of shares at aninside bid price and a number of shares at an inside ask price, percentof inside market shares at the inside bid price, and percent of insidemarket shares at the inside ask price.
 9. The method according to claim8, further comprising displaying at least one of the statisticsindicative of volume activity of the inside market in at least one of atable or a chart for each corresponding symbol.
 10. The method accordingto claim 9, further comprising dynamically sorting the at least one ofthe table or the chart based on a parameter selected by the user toreflect current market activity.
 11. The method according to claim 8,further comprising filtering the data stream, the filtering includingdiscarding bids having a price lower than the last trade value minus oneof a selected threshold percentage of the last trade value or a fixedprice away, and discarding asks having a price higher than the lasttrade value plus one of a selected threshold percentage of the lasttrade value or a fixed price away.
 12. The method according to claim 11,wherein filtering is conducted for a plurality of selected thresholdpercentages or fixed prices away, and for each selected thresholdpercentage or fixed price away a corresponding data set is derived, thestatistic being calculated and updated for each symbol for each dataset.
 13. The method according to claim 8, further comprising filteringthe data stream for each symbol based on traded volume.
 14. The methodaccording to claim 8, further comprising filtering the data stream foreach symbol based on traded price.
 15. A method of tracking a pluralityof symbols relating to securities traded on at least one commonexchange, comprising: receiving a dynamically updated data streamcontaining level 1 data relating to the plurality of symbols traded overthe at least one exchange, the level 1 data including at least the lasttrade price of each symbol; and analyzing the data stream for a set ofsymbols to derive for each symbol at least one of: an upward pricemovement indicator by dividing a count of the number of times the symbolachieves a new intra-session high by an intra-session trading pricerange, and a downward price movement indicator by dividing a count ofthe number of times the symbol achieves a new intra-session low by theintra-session price range.
 16. The method according to claim 15, whereinat least one of the upward price movement indicator and the downwardprice movement indicator is updated to correspond to content of theupdated data stream.
 17. The method according to claim 15, furthercomprising displaying at least one of the upward price movementindicator and the downward price movement indicator in at least one of atable or a chart for each corresponding symbol.
 18. The method accordingto claim 17, further comprising dynamically sorting the at least one ofthe table or the chart based on a parameter selected by the user toreflect current market activity.
 19. The method according to claim 15,further comprising filtering the data stream for each symbol based ontraded volume.
 20. The method according to claim 15, further comprisingfiltering the data stream for each symbol based on traded price.
 21. Themethod according to claim 15, further comprising waiting a specifiedperiod of time after the beginning of the session to commence theanalyzing.
 22. A method of tracking a plurality of symbols relating tosecurities traded on at least one common exchange, comprising: receivinga dynamically updated data stream containing level 1 data relating tothe plurality of symbols traded over the at least one exchange, thelevel 1 data including at least the last trade price of each symbol; andanalyzing the data stream for a set of symbols to derive for each symbolat least one of: a high opening balance range extension by subtracting ahigh trade price established during an opening balance delay intervalfrom a current high trade price, and a low opening balance rangeextension by subtracting a current low trade price from a low tradeprice established during the opening balance delay interval.
 23. Themethod according to claim 22, wherein at least one of the high openingbalance range extension and the low opening balance range extension isupdated to correspond to content of the updated data stream.
 24. Themethod according to claim 22, further comprising displaying at least oneof the high opening balance range extension and the low opening balancerange extension in at least one of a table or a chart for eachcorresponding symbol.
 25. The method according to claim 24, furthercomprising dynamically sorting the at least one of the table or thechart based on a parameter selected by the user to reflect currentmarket activity.
 26. The method according to claim 22, furthercomprising filtering the data stream for each symbol based on tradedvolume.
 27. The method according to claim 22, further comprisingfiltering the data stream for each symbol based on traded price.
 28. Themethod according to claim 22, further comprising waiting a specifiedperiod of time after the beginning of the session to commence theanalyzing.
 29. The method according to claim 22, further comprisingderiving for each symbol at least one of: a high opening balance rangeextension percentage by dividing the corresponding high opening balancerange extension value by a current trading session price range, and alow opening balance range extension percentage by dividing thecorresponding low opening balance range extension value by the currenttrading session price range.
 30. The method according to claim 29,wherein at least one of the high opening balance range extensionpercentage and the low opening balance range extension percentage isupdated to correspond to content of the updated data stream.
 31. Themethod according to claim 29, further comprising displaying at least oneof the high opening balance range extension percentage and the lowopening balance range extension percentage in at least one of a table ora chart for each corresponding symbol.
 32. The method according to claim31, further comprising dynamically sorting the at least one of the tableor the chart based on a parameter selected by the user to reflectcurrent market activity.
 33. The method according to claim 29, furthercomprising filtering the data stream for each symbol based on tradedvolume.
 34. The method according to claim 29, further comprisingfiltering the data stream for each symbol based on traded price.
 35. Themethod according to claim 29, further comprising waiting a specifiedperiod of time after the beginning of the session to commence theanalyzing.
 36. A method of tracking a plurality of symbols relating tosecurities traded on at least one common exchange, comprising: receivinga dynamically updated data stream containing level 1 data relating tothe plurality of symbols traded over the at least one exchange, thelevel 1 data including at least the last trade price of each symbol; andtracking on a symbol by symbol basis for a set of symbols a statisticselected from at least one of: a difference between a number of tradesfor a first time period and a number of trades for a second time period,a difference between a total volume of shares traded for the first timeperiod and a total volume of shares traded for the second time period,an average volume of shares per trade for the first time period; anaverage volume of shares per trade for the second time period; and adifference between the average volume of shares per trade for the firsttime period and the average volume of shares per trade for the secondtime period.
 37. The method according to claim 36, further comprisingdisplaying at least one of the tracked statistics in at least one of atable or a chart for each corresponding symbol.
 38. The method accordingto claim 36, further comprising for at least one of the trackedstatistics calculating an average of the tracked statistic per unit oftime over the respective time periods.
 39. The method according to claim36, wherein the first and the second time periods are from the currenttrading session.
 40. The method according to claim 36, wherein the firsttime period is from the current trading session and the second timeperiod is selected from one of a previous trading session and an averageof multiple trading sessions.
 41. The method according to claim 36,wherein the tracked statistics are updated based on contents of the datastream at regular intervals.
 42. The method according to claim 41,wherein each interval corresponds to a unit of time and, after eachinterval elapses, the tracked statistics are updated based on data fromthe most recent intervals that in total corresponds respectively to alength of the first time period and a length of the second time period.43. The method according to claim 36, wherein the tracked statistics areupdated as a moving average.
 44. The method according to claim 36,further comprising displaying for each corresponding symbol in at leastone of a table or a chart at least one of: a difference between anaverage of the number of trades per unit time for the first time periodand an average of the number of trades per unit time for the second timeperiod, and a difference between an average of the volume of sharestraded per unit time for the first time period and an average of thevolume of shares traded per unit time for the second time period.
 45. Amethod of tracking a plurality of symbols and activity of a plurality ofmarket makers relating to securities traded on at least one commonexchange where the market makers place bids and asks, comprising:receiving a dynamically updated data stream containing level 2 datarelating to a plurality of securities traded over the at least oneexchange, the level 2 data containing a bid price, a bid time, a bidvolume, a security identifier, and a market maker identifier for eachbid, and an ask price, an ask volume, an ask time, a security identifierand a market maker identifier for each ask; and tracking on a symbol bysymbol basis for a set of symbols at least one statistic selected from anumber of bids, a number of asks, a bid volume of shares, an ask volumeof shares, a volume of shares per bid and a volume of shares per ask foreach of a first time period and a second time period.
 46. The methodaccording to claim 45, further comprising displaying at least one of thetracked statistics in at least one of a table or a chart for eachcorresponding symbol.
 47. The method according to claim 45, furthercomprising for at least one of the tracked statistics calculating anaverage of the tracked statistic per unit of time over the respectivetime periods.
 48. The method according to claim 45, wherein the firstand the second time periods are from the current trading session. 49.The method according to claim 45, wherein the first time period is fromthe current trading session and the second time period is selected fromone of a previous trading session and an average of multiple tradingsessions.
 50. The method according to claim 45, wherein the trackedstatistics are updated based on contents of the data stream at regularintervals.
 51. The method according to claim 50, wherein each intervalcorresponds to a unit of time and, after each interval elapses, thetracked statistics are updated based on data from the most recentintervals that in total corresponds respectively to a length of thefirst time period and a length of the second time period.
 52. The methodaccording to claim 45, wherein the tracked statistics are updated as amoving average.
 53. The method according to claim 45, further comprisingdisplaying for each corresponding symbol in at least one of a table or achart at least one of a difference between the number of bids for thefirst time period and the number of bids for the second time period, anda difference between the number of asks for the first time period andthe number of asks for the second time period.
 54. The method accordingto claim 45, further comprising displaying for each corresponding symbolin at least one of a table or a chart at least one of a differencebetween the bid volume for the first time period and the bid volume forthe second period, and a difference between the ask volume for the firsttime period and the ask volume for the second time period.
 55. Themethod according to claim 45, further comprising displaying for eachcorresponding symbol in at least one of a table or a chart at least oneof a difference between the volume per bid for the first time period andthe volume per bid for the second time period, and a difference betweenthe volume per ask for the first time period and the volume per ask forthe second time period.
 56. The method according to claim 45, furthercomprising displaying for each corresponding symbol in at least one of atable or a chart at least one of a difference between an average numberof bids per unit of time for the first time period and an average numberof bids per unit of time for the second time period, and a differencebetween an average number of asks per unit time for the first timeperiod and an average number of asks per unit of time for the secondtime period.
 57. The method according to claim 45, further comprisingdisplaying for each corresponding symbol in at least one of a table or achart at least one of a difference between an average of the bid volumeper unit of time for the first time period and an average of the bidvolume per unit of time for the second time period, and a differencebetween an average of the ask volume per unit of time for the first timeperiod and an average of the ask volume per unit of time for the secondtime period.
 58. A method of tracking a plurality of symbols andactivity of a plurality of market makers relating to securities tradedon at least one common exchange where the market makers place bids andasks, comprising: receiving a dynamically updated data stream containinglevel 2 data relating to a plurality of securities traded over the atleast one exchange, the level 2 data containing a bid price, a bid time,a bid volume, a security identifier, and a market maker identifier foreach bid, and an ask price, an ask volume, an ask time, a securityidentifier and a market maker identifier for each ask; and for aselected market maker, tracking on a symbol by symbol basis for a set ofsymbols at least one statistic selected from a number of bids, a numberof asks, a bid volume of shares, an ask volume of shares, a volume ofshares per bid and a volume of shares per ask for each of a first timeperiod and a second time period.
 59. The method according to claim 58,further comprising displaying at least one of the tracked statistics inat least one of a table or a chart for each corresponding symbol. 60.The method according to claim 58, further comprising for at least one ofthe tracked statistics calculating an average of the tracked statisticper unit of time over the respective time periods.
 61. The methodaccording to claim 58, wherein the first and the second time periods arefrom the current trading session.
 62. The method according to claim 58,wherein the first time period is from the current trading session andthe second time period is selected from one of a previous tradingsession and an average of multiple trading sessions.
 63. The methodaccording to claim 58, wherein the tracked statistics are updated basedon contents of the data stream at regular intervals.
 64. The methodaccording to claim 63, wherein each interval corresponds to a unit oftime and, after each interval elapses, the tracked statistics areupdated based on data from the most recent intervals that in totalcorresponds respectively to a length of the first time period and alength of the second time period.
 65. The method according to claim 58,wherein the tracked statistics are updated as a moving average.
 66. Themethod according to claim 58, further comprising displaying for eachcorresponding symbol in at least one of a table or a chart at least oneof a difference between the number of bids for the first time period andthe number of bids for the second time period, and a difference betweenthe number of asks for the first time period and the number of asks forthe second time period.
 67. The method according to claim 58, furthercomprising displaying for each corresponding symbol in at least one of atable or a chart at least one of a difference between the bid volume forthe first time period and the bid volume for the second period, and adifference between the ask volume for the first time period and the askvolume for the second time period.
 68. The method according to claim 58,further comprising displaying for each corresponding symbol in at leastone of a table or a chart at least one of a difference between thevolume per bid for the first time period and the volume per bid for thesecond time period, and a difference between the volume per ask for thefirst time period and the volume per ask for the second time period. 69.The method according to claim 58, further comprising displaying for eachcorresponding symbol in at least one of a table or a chart at least oneof a difference between an average number of bids per unit of time forthe first time period and an average number of bids per unit of time forthe second time period, and a difference between an average number ofasks per unit time for the first time period and an average number ofasks per unit of time for the second time period.
 70. The methodaccording to claim 58, further comprising displaying for eachcorresponding symbol in at least one of a table or a chart at least oneof a difference between an average of the bid volume per unit of timefor the first time period and an average of the bid volume per unit oftime for the second time period, and a difference between an average ofthe ask volume per unit of time for the first time period and an averageof the ask volume per unit of time for the second time period.
 71. Themethod according to claim 58, further comprising: for a second marketmaker and on a symbol by symbol basis, tracking the at least onestatistic selected from a number of bids, a number of asks, a bidvolume, an ask volume, a volume per bid and a volume per ask for each ofa first time period and a second time period; and comparing the at leastone statistic for the selected market maker and the at least onestatistic for the second marker maker.
 72. A method of tracking activityof a plurality of market makers relating to securities traded on atleast one common exchange where the market makers place bids and asks,comprising: receiving a dynamically updated data stream containing level1 and level 2 data relating to a plurality of securities traded over theat least one exchange, the level 1 data including at least the lasttrade price, inside bid and inside ask of each security and the level 2data containing a bid price, a bid time, a bid volume, a securityidentifier, and a market maker identifier for each bid, and an askprice, an ask volume, an ask time, a security identifier and a marketmaker identifier for each ask; and for each symbol and market maker pairfrom a set of symbols and a set of market makers, counting at least oneof a number of times that a bid having an inside bid price is placed,and a number of times that an ask having an inside ask price is placed.73. The method according to claim 72, further comprising displaying atleast one of the count of bids having the inside bid price and the countof the asks having the inside ask price in at least one of a table or achart for each corresponding symbol.
 74. The method according to claim73, further comprising dynamically sorting the at least one of the tableor the chart based on a parameter selected by the user to reflectcurrent market activity.
 75. The method according to claim 72, furthercomprising filtering the data stream for each symbol based on tradedvolume.
 76. The method according to claim 72, further comprisingfiltering the data stream for each symbol based on traded price.
 77. Amethod of tracking activity of a plurality of market makers relating tosecurities traded on at least one common exchange where the marketmakers place bids and asks, comprising: receiving a dynamically updateddata stream containing level 1 and level 2 data relating to a pluralityof securities traded over the at least one exchange, the level 1 dataincluding at least the last trade price, inside bid and inside ask ofeach security and the level 2 data containing a bid price, a bid time, abid volume, a security identifier, and a market maker identifier foreach bid, and an ask price, an ask volume, an ask time, a securityidentifier and a market maker identifier for each ask; and for eachsymbol and market maker pair from a set of symbols and a set of marketmakers, counting at least one of: a number of times the market maker isa first market maker to post an inside bid that is higher than animmediately preceding inside bid for the symbol, and a number of timesthe market maker is a first market maker to post an inside ask that islower than an immediately preceding inside ask for the symbol.
 78. Themethod according to claim 77, further comprising for each symbol andmarket maker pair counting at least one of: a number of times that a bidhaving an inside bid price is placed, and a number of times that an askhaving an inside ask price is placed.
 79. The method according to claim77, further comprising for each symbol and market maker pair counting atleast one of: a number of times the market maker is a last market makerto leave an inside bid price for the symbol other than by marketmovement to a higher inside bid price, and a number of times the marketmaker is a last market maker to leave an inside ask price for the symbolother than by market movement to a lower inside ask price.
 80. Themethod according to claim 79, further comprising for each symbol andmarket maker pair totaling at least one of: the counted number of timesthe market maker is the first market maker to post an inside bid that ishigher than an immediately preceding inside bid and the counted numberof times the market maker is the last market maker to leave an insidebid price, and the counted number of times the market maker is the firstmarket maker to post an inside ask that is lower than an immediatelypreceding inside ask and the counted number of times the market maker isthe last market maker to leave an inside ask price.
 81. The methodaccording to claim 77, further comprising displaying at least one of thecounts in at least one of a table or a chart for each correspondingsymbol and market maker pair.
 82. The method according to claim 81,further comprising dynamically sorting the at least one of the table orthe chart based on a parameter selected by the user to reflect currentmarket activity.
 83. The method according to claim 77, furthercomprising filtering the data stream for each symbol based on tradedvolume.
 84. The method according to claim 77, further comprisingfiltering the data stream for each symbol based on traded price.
 85. Amethod of tracking activity of a plurality of market makers relating tosecurities traded on at least one common exchange where the marketmakers place bids and asks, comprising: receiving a dynamically updateddata stream containing level 1 and level 2 data relating to a pluralityof securities traded over the at least one exchange, the level 1 dataincluding at least the last trade price of each security and the level 2data containing a bid price, a bid time, a bid volume, a securityidentifier, and a market maker identifier for each bid, and an askprice, an ask volume, an ask time, a security identifier and a marketmaker identifier for each ask; and for each symbol and market maker pairfrom a set of symbols and a set of market makers, generating at leastone of a bid persistence statistic by approximating a percentage of apredetermined number trades for which the market maker had an inside bidprice, and an ask persistence statistic by approximating a percentage ofa predetermined number of trades for which the market maker has aninside ask price.
 86. The method according to claim 85, furthercomprising displaying at least one of the bid persistence statistic andthe ask persistence statistic in at least one of a table or a chart foreach corresponding symbol and market maker pair.
 87. The methodaccording to claim 86, further comprising dynamically sorting the atleast one of the table or the chart based on a parameter selected by theuser to reflect current market activity.
 88. The method according toclaim 85, further comprising filtering the data stream for each symbolbased on traded volume.
 89. The method according to claim 85, furthercomprising filtering the data stream for each symbol based on tradedprice.
 90. The method according to claim 85, wherein the bid persistencestatistic and the ask persistence statistic are respectively calculatedby: assigning a value of one to each order at the inside market,otherwise assigning a value of zero to the order; and separately solvingthe equation:$( {{\Sigma\quad{VALp}} + \frac{{CV} - {\Sigma\quad{VALp}}}{m}} )$ for bid orders and ask orders, wherein m is the predetermined number oftrades, CV is the current value assigned to the order and ΣVAL_(p) isthe prior sum of all values calculated according to the equation onetrade earlier.
 91. The method according to claim 90, further comprisingmultiplying the respective bid order and ask order results of theequation by one hundred to arrive at respective representations ofexponential averages.
 92. The method according to claim 85, wherein thebid persistence statistic and the ask persistence statistic arerespectively calculated as one of a simple moving average, anexponential moving average, a weighted moving average, a linearregression, or mathematical averaging technique.
 93. A program embodiedin computer readable medium to track activity of a plurality of marketmakers relating to securities traded on at least one common exchangewhere the market makers place bids and asks, comprising: code thatreceives a dynamically updated data stream containing level 1 and level2 data relating to a plurality of securities traded over the at leastone exchange, the level 1 data including at least the last trade price,inside bid and inside ask of each security and the level 2 datacontaining a bid price, a bid time, a bid volume, a security identifier,and a market maker identifier for each bid, and an ask price, an askvolume, an ask time, a security identifier and a market maker identifierfor each ask; and code that analyzes the data stream for a set ofsymbols to derive a statistic indicative of activity of an inside marketfor each of the symbols and update the statistic to correspond tocontent of the updated data stream, the statistic selected from at leastone of a total number of market makers at the inside market, and adifference between a number of market makers at an inside bid price anda number of market makers at an inside ask price.
 94. The programaccording to claim 93, further comprising code that displays at leastone of the statistics indicative of activity of the inside market in atleast one of a table or a chart for each corresponding symbol.
 95. Theprogram according to claim 94, further comprising code that dynamicallysorts the at least one of the table or the chart based on a parameterselected by the user to reflect current market activity.
 96. The programaccording to claim 93, further comprising code that filters the datastream by discarding bids having a price lower than the last trade valueminus one of a selected threshold percentage of the last trade value ora fixed price away, and discarding asks having a price higher than thelast trade value plus one of a selected threshold percentage of the lasttrade value or a fixed price away.
 97. The program according to claim96, wherein the filtering code filters for a plurality of selectedthreshold percentages or fixed prices away, and for each selectedthreshold percentage or fixed price away a corresponding data set isderived, the statistic being calculated and updated for each symbol foreach data set.
 98. The program according to claim 93, further comprisingcode that filters the data stream for each symbol based on tradedvolume.
 99. The program according to claim 93, further comprising codethat filters the data stream for each symbol based on traded price. 100.A program embodied in computer readable medium to track activity of aplurality of market makers relating to securities traded on at least onecommon exchange where the market makers place bids and asks, comprising:code that receives a dynamically updated data stream containing level 1and level 2 data relating to a plurality of securities traded over theat least one exchange, the level 1 data including at least the lasttrade price, inside bid and inside ask of each security and the level 2data containing a bid price, a bid time, a bid volume, a securityidentifier, and a market maker identifier for each bid, and an askprice, an ask volume, an ask time, a security identifier and a marketmaker identifier for each ask; and code that analyzes the data streamfor a set of symbols to derive a statistic indicative of volume activityof an inside market for each of the symbols and that updates statisticto correspond to content of the updated data stream, the statisticselected from at least one of a total volume of shares at the insidemarket, a difference between a number of shares at an inside bid priceand a number of shares at an inside ask price, percent of inside marketshares at the inside bid price, and percent of inside market shares atthe inside ask price.
 101. The program according to claim 100, furthercomprising code that displays at least one of the statistics indicativeof volume activity of the inside market in at least one of a table or achart for each corresponding symbol.
 102. The program according to claim101, further comprising code that dynamically sorts the at least one ofthe table or the chart based on a parameter selected by the user toreflect current market activity.
 103. The program according to claim100, further comprising code that filters the data stream by discardingbids having a price lower than the last trade value minus one of aselected threshold percentage of the last trade value or a fixed priceaway, and discarding asks having a price higher than the last tradevalue plus one of a selected threshold percentage of the last tradevalue or a fixed price away.
 104. The program according to claim 103,wherein the filtering code filters for a plurality of selected thresholdpercentages or fixed prices away, and for each selected thresholdpercentage or fixed price away a corresponding data set is derived, thestatistic being calculated and updated for each symbol for each dataset.
 105. The program according to claim 100, further comprising codethat filters the data stream for each symbol based on traded volume.106. The program according to claim 100, further comprising code thatfilters the data stream for each symbol based on traded price.
 107. Aprogram embodied in computer readable medium to track a plurality ofsymbols relating to securities traded on at least one common exchange,comprising: code that receives a dynamically updated data streamcontaining level 1 data relating to the plurality of symbols traded overthe at least one exchange, the level 1 data including at least the lasttrade price of each symbol; and code that analyzes the data stream for aset of symbols to derive for each symbol at least one of: an upwardprice movement indicator by dividing a count of the number of times thesymbol achieves a new intra-session high by an intra-session tradingprice range, and a downward price movement indicator by dividing a countof the number of times the symbol achieves a new intra-session low bythe intra-session price range.
 108. The program according to claim 107,further comprising code that updates at least one of the upward pricemovement indicator and the downward price movement indicator tocorrespond to content of the updated data stream.
 109. The programaccording to claim 107, further comprising code that displays at leastone of the upward price movement indicator and the downward pricemovement indicator in at least one of a table or a chart for eachcorresponding symbol.
 110. The program according to claim 109, furthercomprising code that dynamically sorts the at least one of the table orthe chart based on a parameter selected by the user to reflect currentmarket activity.
 111. The program according to claim 107, furthercomprising code that filters the data stream for each symbol based ontraded volume.
 112. The program according to claim 107, furthercomprising code that filters the data stream for each symbol based ontraded price.
 113. The program according to claim 107, where theanalyzing code is programmed to wait a specified period of time afterthe beginning of the session to commence the analyzing.
 114. A programembodied in computer readable medium to track a plurality of symbolsrelating to securities traded on at least one common exchange,comprising: code that receives a dynamically updated data streamcontaining level 1 data relating to the plurality of symbols traded overthe at least one exchange, the level 1 data including at least the lasttrade price of each symbol; and code that analyzes the data stream for aset of symbols to derive for each symbol at least one of: a high openingbalance range extension by subtracting a high trade price establishedduring an opening balance delay interval from a current high tradeprice, and a low opening balance range extension by subtracting acurrent low trade price from a low trade price established during theopening balance delay interval.
 115. The program according to claim 114,further comprising code that updates at least one of the high openingbalance range extension and the low opening balance range extension tocorrespond to content of the updated data stream.
 116. The programaccording to claim 114, further comprising code that displays at leastone of the high opening balance range extension and the low openingbalance range extension in at least one of a table or a chart for eachcorresponding symbol.
 117. The program according to claim 116, furthercomprising code that dynamically sorts the at least one of the table orthe chart based on a parameter selected by the user to reflect currentmarket activity.
 118. The program according to claim 114, furthercomprising code that filters the data stream for each symbol based ontraded volume.
 119. The program according to claim 114, furthercomprising code that filters the data stream for each symbol based ontraded price.
 120. The program according to claim 114, where theanalyzing code is programmed to wait a specified period of time afterthe beginning of the session to commence the analyzing.
 121. The programaccording to claim 114, further comprising code that derives for eachsymbol at least one of: a high opening balance range extensionpercentage by dividing the corresponding high opening balance rangeextension value by a current trading session price range, and a lowopening balance range extension percentage by dividing the correspondinglow opening balance range extension value by the current trading sessionprice range.
 122. The program according to claim 121, further comprisingcode that updates at least one of the high opening balance rangeextension percentage and the low opening balance range extensionpercentage to correspond to content of the updated data stream.
 123. Theprogram according to claim 121, further comprising code that displays atleast one of the high opening balance range extension percentage and thelow opening balance range extension percentage in at least one of atable or a chart for each corresponding symbol.
 124. The programaccording to claim 123, further comprising code that dynamically sortsthe at least one of the table or the chart based on a parameter selectedby the user to reflect current market activity.
 125. The programaccording to claim 121, further comprising code that filters the datastream for each symbol based on traded volume.
 126. The programaccording to claim 121, further comprising code that filters the datastream for each symbol based on traded price.
 127. The program accordingto claim 121, where the analyzing code is programmed to wait a specifiedperiod of time after the beginning of the session to commence theanalyzing.
 128. A program embodied in computer readable medium to tracka plurality of symbols relating to securities traded on at least onecommon exchange, comprising: code that receives a dynamically updateddata stream containing level 1 data relating to the plurality of symbolstraded over the at least one exchange, the level 1 data including atleast the last trade price of each symbol; and code that tracks on asymbol by symbol basis for a set of symbols a statistic selected from atleast one of: a difference between a number of trades for a first timeperiod and a number of trades for a second time period, a differencebetween a total volume of shares traded for the first time period and atotal volume of shares traded for the second time period, an averagevolume of shares per trade for the first time period; an average volumeof shares per trade for the second time period; and a difference betweenthe average volume of shares per trade for the first time period and theaverage volume of shares per trade for the second time period.
 129. Theprogram according to claim 128, further comprising code that displays atleast one of the tracked statistics in a at least one of the table orthe chart for each corresponding symbol.
 130. The program according toclaim 128, further comprising code that for at least one of the trackedstatistics calculates an average of the tracked statistic per unit oftime over the respective time periods.
 131. The program according toclaim 128, wherein the first and the second time periods are from thecurrent trading session.
 132. The program according to claim 128,wherein the first time period is from the current trading session andthe second time period is selected from one of a previous tradingsession and an average of multiple trading sessions.
 133. The programaccording to claim 128, further comprising code that updates the trackedstatistics based on contents of the data stream at regular intervals.134. The program according to claim 133, wherein each intervalcorresponds to a unit of time and, after each interval elapses, thetracked statistics are updated based on data from the most recentintervals that in total corresponds respectively to a length of thefirst time period and a length of the second time period.
 135. Theprogram according to claim 128, wherein the tracked statistics areupdated as a moving average.
 136. The program according to claim 128,further comprising code that displays for each corresponding symbol inat least one of a table or a chart at least one of: a difference betweenan average of the number of trades per unit time for the first timeperiod and an average of the number of trades per unit time for thesecond time period, and a difference between an average of the volumetraded per unit time for the first time period and an average of thevolume traded per unit time for the second time period.
 137. A programembodied in computer readable medium to track a plurality of symbols andactivity of a plurality of market makers relating to securities tradedon at least one common exchange where the market makers place bids andasks, comprising: code that receives a dynamically updated data streamcontaining level 2 data relating to a plurality of securities tradedover the at least one exchange, the level 2 data containing a bid price,a bid time, a bid volume, a security identifier, and a market makeridentifier for each bid, and an ask price, an ask volume, an ask time, asecurity identifier and a market maker identifier for each ask; and codethat tracks on a symbol by symbol basis for a set of symbols at leastone statistic selected from a number of bids, a number of asks, a bidvolume of shares, an ask volume of shares, a volume of shares per bidand a volume of shares per ask for each of a first time period and asecond time period.
 138. The program according to claim 137, furthercomprising code that displays at least one of the tracked statistics inat least one of a table or a chart for each corresponding symbol. 139.The program according to claim 137, further comprising code that for atleast one of the tracked statistics calculates an average of the trackedstatistic per unit of time over the respective time periods.
 140. Theprogram according to claim 137, wherein the first and the second timeperiods are from the current trading session.
 141. The program accordingto claim 137, wherein the first time period is from the current tradingsession and the second time period is selected from one of a previoustrading session and an average of multiple trading sessions.
 142. Theprogram according to claim 137, further comprising code that updates thetracked statistics based on contents of the data stream at regularintervals.
 143. The program according to claim 142, wherein eachinterval corresponds to a unit of time and, after each interval elapses,the tracked statistics are updated based on data from the most recentintervals that in total corresponds respectively to a length of thefirst time period and a length of the second time period.
 144. Theprogram according to claim 137, wherein the tracked statistics areupdated as a moving average.
 145. The program according to claim 137,further comprising code that displays for each corresponding symbol inat least one of a table or a chart at least one of a difference betweenthe number of bids for the first time period and the number of bids forthe second time period, and a difference between the number of asks forthe first time period and the number of asks for the second time period.146. The program according to claim 137, further comprising code thatdisplays for each corresponding symbol in at least one of a table or achart at least one of a difference between the bid volume for the firsttime period and the bid volume for the second period, and a differencebetween the ask volume for the first time period and the ask volume forthe second time period.
 147. The program according to claim 137, furthercomprising code that displays for each corresponding symbol in at leastone of a table or a chart at least one of a difference between thevolume per bid for the first time period and the volume per bid for thesecond time period, and a difference between the volume per ask for thefirst time period and the volume per ask for the second time period.148. The program according to claim 137, further comprising code thatdisplays for each corresponding symbol in at least one of a table or achart at least one of a difference between an average number of bids perunit of time for the first time period and an average number of bids perunit of time for the second time period, and a difference between anaverage number of asks per unit time for the first time period and anaverage number of asks per unit of time for the second time period. 149.The program according to claim 137, further comprising code thatdisplays for each corresponding symbol in at least one of a table or achart at least one of a difference between an average of the bid volumeper unit of time for the first time period and an average of the bidvolume per unit of time for the second time period, and a differencebetween an average of the ask volume per unit of time for the first timeperiod and an average of the ask volume per unit of time for the secondtime period.
 150. A program embodied in computer readable medium totrack a plurality of symbols and activity of a plurality of marketmakers relating to securities traded on at least one common exchangewhere the market makers place bids and asks, comprising: code thatreceives a dynamically updated data stream containing level 2 datarelating to a plurality of securities traded over the at least oneexchange, the level 2 data containing a bid price, a bid time, a bidvolume, a security identifier, and a market maker identifier for eachbid, and an ask price, an ask volume, an ask time, a security identifierand a market maker identifier for each ask; and code that tracks for aselected market maker on a symbol by symbol basis for a set of symbolsat least one statistic selected from a number of bids, a number of asks,a bid volume of shares, an ask volume of shares, a volume of shares perbid and a volume of shares per ask for each of a first time period and asecond time period.
 151. The program according to claim 150, furthercomprising code that displays at least one of the tracked statistics inat least one of a table or a chart for each corresponding symbol. 152.The program according to claim 150, further comprising code thatcalculates for at least one of the tracked statistics an average of thetracked statistic per unit of time over the respective time periods.153. The program according to claim 150, wherein the first and thesecond time periods are from the current trading session.
 154. Theprogram according to claim 150, wherein the first time period is fromthe current trading session and the second time period is selected fromone of a previous trading session and an average of multiple tradingsessions.
 155. The program according to claim 150, further comprisingcode that updates the tracked statistics based on contents of the datastream at regular intervals.
 156. The program according to claim 155,wherein each interval corresponds to a unit of time and, after eachinterval elapses, the tracked statistics are updated based on data fromthe most recent intervals that in total corresponds respectively to alength of the first time period and a length of the second time period.157. The program according to claim 150, wherein the tracked statisticsare updated as a moving average.
 158. The program according to claim150, further comprising code that displays for each corresponding symbolin at least one of a table or a chart at least one of a differencebetween the number of bids for the first time period and the number ofbids for the second time period, and a difference between the number ofasks for the first time period and the number of asks for the secondtime period.
 159. The program according to claim 150, further comprisingcode that displays for each corresponding symbol in at least one of atable or a chart at least one of a difference between the bid volume forthe first time period and the bid volume for the second period, and adifference between the ask volume for the first time period and the askvolume for the second time period.
 160. The program according to claim150, further comprising code that displays for each corresponding symbolin at least one of a table or a chart at least one of a differencebetween the volume per bid for the first time period and the volume perbid for the second time period, and a difference between the volume perask for the first time period and the volume per ask for the second timeperiod.
 161. The program according to claim 150, further comprising codethat displays for each corresponding symbol in at least one of a tableor a chart at least one of a difference between an average number ofbids per unit of time for the first time period and an average number ofbids per unit of time for the second time period, and a differencebetween an average number of asks per unit time for the first timeperiod and an average number of asks per unit of time for the secondtime period.
 162. The program according to claim 150, further comprisingcode that displays for each corresponding symbol in a table at least oneof a difference between an average of the bid volume per unit of timefor the first time period and an average of the bid volume per unit oftime for the second time period, and a difference between an average ofthe ask volume per unit of time for the first time period and an averageof the ask volume per unit of time for the second time period.
 163. Theprogram according to claim 150, further comprising: code that tracks fora second market maker and on a symbol by symbol basis the at least onestatistic selected from a number of bids, a number of asks, a bidvolume, an ask volume, a volume per bid and a volume per ask for each ofa first time period and a second time period; and code that compares theat least one statistic for the selected market maker and the at leastone statistic for the second marker maker.
 164. A program embodied incomputer readable medium to track activity of a plurality of marketmakers relating to securities traded on at least one common exchangewhere the market makers place bids and asks, comprising: code thatreceives a dynamically updated data stream containing level 1 and level2 data relating to a plurality of securities traded over the at leastone exchange, the level 1 data including at least the last trade price,inside bid and inside ask of each security and the level 2 datacontaining a bid price, a bid time, a bid volume, a security identifier,and a market maker identifier for each bid, and an ask price, an askvolume, an ask time, a security identifier and a market maker identifierfor each ask; and code that, for each symbol and market maker pair froma set of symbols and a set of market makers, counts at least one of anumber of times that a bid having an inside bid price is placed, and anumber of times that an ask having an inside ask price is placed. 165.The program according to claim 164, further comprising code thatdisplays at least one of the count of bids having the inside bid priceand the count of the inside ask price in at least one of a table or achart for each corresponding symbol.
 166. The program according to claim165, further comprising code that dynamically sorts the at least one ofthe table or the chart based on a parameter selected by the user toreflect current market activity.
 167. The program according to claim164, further comprising code that filters the data stream for eachsymbol based on traded volume.
 168. The program according to claim 164,further comprising code that filters the data stream for each symbolbased on traded price.
 169. A program embodied in computer readablemedium to track activity of a plurality of market makers relating tosecurities traded on at least one common exchange where the marketmakers place bids and asks, comprising: code that receives a dynamicallyupdated data stream containing level 1 and level 2 data relating to aplurality of securities traded over the at least one exchange, the level1 data including at least the last trade price, inside bid and insideask of each security and the level 2 data containing a bid price, a bidtime, a bid volume, a security identifier, and a market maker identifierfor each bid, and an ask price, an ask volume, an ask time, a securityidentifier and a market maker identifier for each ask; and code that,for each symbol and market maker pair from a set of symbols and a set ofmarket makers, counts at least one of: a number of times the marketmaker is a first market maker to post an inside bid that is higher thanan immediately preceding inside bid for the symbol, and a number oftimes the market maker is a first market maker to post an inside askthat is lower than an immediately preceding inside ask for the symbol.170. The program according to claim 169, further comprising code that,for each symbol and market maker pair, counts at least one of: a numberof times that a bid having an inside bid price is placed, and a numberof times that an ask having an inside ask price is placed.
 171. Theprogram according to claim 169, further comprising code that, for eachsymbol and market maker pair, counts at least one of: a number of timesthe market maker is a last market maker to leave an inside bid price forthe symbol other than by market movement to a higher inside bid price,and a number of times the market maker is a last market maker to leavean inside ask price for the symbol other than by market movement to alower inside ask price.
 172. The program according to claim 171, furthercomprising code that, for each symbol and market maker pair, totals atleast one of: the counted number of times the market maker is the firstmarket maker to post an inside bid that is higher than an immediatelypreceding inside bid and the counted number of times the market maker isthe last market maker to leave an inside bid price, and the countednumber of times the market maker is the first market maker to post aninside ask that is lower than an immediately preceding inside ask andthe counted number of times the market maker is the last market maker toleave an inside ask price.
 173. The program according to claim 169,further comprising code that displays at least one of the counts in atleast one of a table or a chart for each corresponding symbol and marketmaker pair.
 174. The program according to claim 173, further comprisingcode that dynamically sorts the at least one of the table or the chartbased on a parameter selected by the user to reflect current marketactivity.
 175. The program according to claim 169, further comprisingcode that filters the data stream for each symbol based on tradedvolume.
 176. The program according to claim 169, further comprising codethat filters the data stream for each symbol based on traded price. 177.A program embodied in computer readable medium to track activity of aplurality of market makers relating to securities traded on at least onecommon exchange where the market makers place bids and asks, comprising:code that receives a dynamically updated data stream containing level 1and level 2 data relating to a plurality of securities traded over theat least one exchange, the level 1 data including at least the lasttrade price of each security and the level 2 data containing a bidprice, a bid time, a bid volume, a security identifier, and a marketmaker identifier for each bid, and an ask price, an ask volume, an asktime, a security identifier and a market maker identifier for each ask;and code that, for each symbol and market maker pair from a set ofsymbols and a set of market makers, generates at least one of a bidpersistence statistic by approximating a percentage of a predeterminednumber trades for which the market maker had an inside bid price, and anask persistence statistic by approximating a percentage of apredetermined number of trades for which the market maker has an insideask price.
 178. The program according to claim 177, further comprisingcode that displays at least one of the bid persistence statistic and theask persistence statistic in at least one of a table or a chart for eachcorresponding symbol and market maker pair.
 179. The program accordingto claim 178, further comprising code that dynamically sorts the atleast one of the table or the chart based on a parameter selected by theuser to reflect current market activity.
 180. The program according toclaim 177, further comprising code that filters the data stream for eachsymbol based on traded volume.
 181. The program according to claim 177,further comprising code that filters the data stream for each symbolbased on traded price.
 182. The program according to claim 177, whereinthe code that calculates the bid persistence statistic and the askpersistence statistic includes code that: assigns a value of one to eachorder at the inside market, otherwise assigning a value of zero to theorder; and separately solves the equation:$( {{\Sigma\quad{VALp}} + \frac{{CV} - {\Sigma\quad{VALp}}}{m}} )$ for bid orders and ask orders, wherein m is the predetermined number oftrades, CV is the current value assigned to the order and ΣVAL_(p) isthe prior sum of all values calculated according to the equation onetrade earlier.
 183. The program according to claim 182, wherein the codethat calculates the bid persistence statistic and the ask persistencestatistic includes code that multiplies the respective bid order and askorder results of the equation by one hundred to arrive at respectiverepresentations of exponential averages.
 184. The program according toclaim 177, wherein the bid persistence statistic and the ask persistencestatistic are respectively calculated as one of a simple moving average,an exponential moving average, a weighted moving average, a linearregression, or mathematical averaging technique.